Initial commit new file: .gitignore new file: .vscode/c_cpp_properties.json new file: .vscode/settings.json new file: .vscode/tasks.json new file: src/detection_msgs/CMakeLists.txt new file: src/detection_msgs/msg/BoundingBox.msg new file: src/detection_msgs/msg/BoundingBoxes.msg new file: src/detection_msgs/package.xml new file: src/maintain/CMakeLists.txt new file: src/maintain/launch/maintain.launch new file: src/maintain/package.xml new file: src/maintain/scripts/test.py new file: src/vision_opencv/README.rst new file: src/vision_opencv/cv_bridge/CHANGELOG.rst new file: src/vision_opencv/cv_bridge/CMakeLists.txt new file: src/vision_opencv/cv_bridge/cmake/cv_bridge-extras.cmake.in new file: src/vision_opencv/cv_bridge/doc/conf.py new file: src/vision_opencv/cv_bridge/doc/index.rst new file: src/vision_opencv/cv_bridge/doc/mainpage.dox new file: src/vision_opencv/cv_bridge/include/cv_bridge/cv_bridge.h new file: src/vision_opencv/cv_bridge/include/cv_bridge/rgb_colors.h new file: src/vision_opencv/cv_bridge/package.xml new file: src/vision_opencv/cv_bridge/python/CMakeLists.txt new file: src/vision_opencv/cv_bridge/python/__init__.py.plain.in new file: src/vision_opencv/cv_bridge/python/cv_bridge/__init__.py new file: src/vision_opencv/cv_bridge/python/cv_bridge/__pycache__/core.cpython-38.pyc new file: src/vision_opencv/cv_bridge/python/cv_bridge/core.py new file: src/vision_opencv/cv_bridge/rosdoc.yaml new file: src/vision_opencv/cv_bridge/setup.py new file: src/vision_opencv/cv_bridge/src/CMakeLists.txt new file: src/vision_opencv/cv_bridge/src/boost/README new file: src/vision_opencv/cv_bridge/src/boost/core/scoped_enum.hpp new file: src/vision_opencv/cv_bridge/src/boost/endian/conversion.hpp new file: src/vision_opencv/cv_bridge/src/boost/endian/detail/intrinsic.hpp new file: src/vision_opencv/cv_bridge/src/boost/predef/detail/_cassert.h new file: src/vision_opencv/cv_bridge/src/boost/predef/detail/endian_compat.h new file: src/vision_opencv/cv_bridge/src/boost/predef/detail/test.h new file: src/vision_opencv/cv_bridge/src/boost/predef/library/c/_prefix.h new file: src/vision_opencv/cv_bridge/src/boost/predef/library/c/gnu.h new file: src/vision_opencv/cv_bridge/src/boost/predef/make.h new file: src/vision_opencv/cv_bridge/src/boost/predef/os/android.h new file: src/vision_opencv/cv_bridge/src/boost/predef/os/bsd.h new file: src/vision_opencv/cv_bridge/src/boost/predef/os/bsd/bsdi.h new file: src/vision_opencv/cv_bridge/src/boost/predef/os/bsd/dragonfly.h new file: src/vision_opencv/cv_bridge/src/boost/predef/os/bsd/free.h new file: src/vision_opencv/cv_bridge/src/boost/predef/os/bsd/net.h new file: src/vision_opencv/cv_bridge/src/boost/predef/os/bsd/open.h new file: src/vision_opencv/cv_bridge/src/boost/predef/os/ios.h new file: src/vision_opencv/cv_bridge/src/boost/predef/os/macos.h new file: src/vision_opencv/cv_bridge/src/boost/predef/other/endian.h new file: src/vision_opencv/cv_bridge/src/boost/predef/version_number.h new file: src/vision_opencv/cv_bridge/src/cv_bridge.cpp new file: src/vision_opencv/cv_bridge/src/module.cpp new file: src/vision_opencv/cv_bridge/src/module.hpp new file: src/vision_opencv/cv_bridge/src/module_opencv2.cpp new file: src/vision_opencv/cv_bridge/src/module_opencv3.cpp new file: src/vision_opencv/cv_bridge/src/pycompat.hpp new file: src/vision_opencv/cv_bridge/src/rgb_colors.cpp new file: src/vision_opencv/cv_bridge/test/CMakeLists.txt new file: src/vision_opencv/cv_bridge/test/conversions.py new file: src/vision_opencv/cv_bridge/test/enumerants.py new file: src/vision_opencv/cv_bridge/test/python_bindings.py new file: src/vision_opencv/cv_bridge/test/test_compression.cpp new file: src/vision_opencv/cv_bridge/test/test_endian.cpp new file: src/vision_opencv/cv_bridge/test/test_rgb_colors.cpp new file: src/vision_opencv/cv_bridge/test/utest.cpp new file: src/vision_opencv/cv_bridge/test/utest2.cpp new file: src/vision_opencv/image_geometry/CHANGELOG.rst new file: src/vision_opencv/image_geometry/CMakeLists.txt new file: src/vision_opencv/image_geometry/doc/conf.py new file: src/vision_opencv/image_geometry/doc/index.rst new file: src/vision_opencv/image_geometry/doc/mainpage.dox new file: src/vision_opencv/image_geometry/include/image_geometry/exports.h new file: src/vision_opencv/image_geometry/include/image_geometry/pinhole_camera_model.h new file: src/vision_opencv/image_geometry/include/image_geometry/stereo_camera_model.h new file: src/vision_opencv/image_geometry/package.xml new file: src/vision_opencv/image_geometry/rosdoc.yaml new file: src/vision_opencv/image_geometry/setup.py new file: src/vision_opencv/image_geometry/src/image_geometry/__init__.py new file: src/vision_opencv/image_geometry/src/image_geometry/cameramodels.py new file: src/vision_opencv/image_geometry/src/pinhole_camera_model.cpp new file: src/vision_opencv/image_geometry/src/stereo_camera_model.cpp new file: src/vision_opencv/image_geometry/test/CMakeLists.txt new file: src/vision_opencv/image_geometry/test/directed.py new file: src/vision_opencv/image_geometry/test/utest.cpp new file: src/vision_opencv/opencv_tests/CHANGELOG.rst new file: src/vision_opencv/opencv_tests/CMakeLists.txt new file: src/vision_opencv/opencv_tests/launch/pong.launch new file: src/vision_opencv/opencv_tests/mainpage.dox new file: src/vision_opencv/opencv_tests/nodes/broadcast.py new file: src/vision_opencv/opencv_tests/nodes/rosfacedetect.py new file: src/vision_opencv/opencv_tests/nodes/source.py new file: src/vision_opencv/opencv_tests/package.xml new file: src/vision_opencv/vision_opencv/CHANGELOG.rst new file: src/vision_opencv/vision_opencv/CMakeLists.txt new file: src/vision_opencv/vision_opencv/package.xml new file: src/yolov5_ros/CMakeLists.txt new file: src/yolov5_ros/LICENSE new file: src/yolov5_ros/README.md new file: src/yolov5_ros/launch/yolov5.launch new file: src/yolov5_ros/launch/yolov5_d435.launch new file: src/yolov5_ros/package.xml new file: src/yolov5_ros/src/detect.py new file: src/yolov5_ros/src/yolov5/.dockerignore new file: src/yolov5_ros/src/yolov5/.gitattributes new file: src/yolov5_ros/src/yolov5/.gitignore new file: src/yolov5_ros/src/yolov5/.pre-commit-config.yaml new file: src/yolov5_ros/src/yolov5/CONTRIBUTING.md new file: src/yolov5_ros/src/yolov5/LICENSE new file: src/yolov5_ros/src/yolov5/README.md new file: src/yolov5_ros/src/yolov5/classify/predict.py new file: src/yolov5_ros/src/yolov5/classify/train.py new file: src/yolov5_ros/src/yolov5/classify/val.py new file: src/yolov5_ros/src/yolov5/data/Argoverse.yaml new file: src/yolov5_ros/src/yolov5/data/GlobalWheat2020.yaml new file: src/yolov5_ros/src/yolov5/data/ImageNet.yaml new file: src/yolov5_ros/src/yolov5/data/Objects365.yaml new file: src/yolov5_ros/src/yolov5/data/SKU-110K.yaml new file: src/yolov5_ros/src/yolov5/data/VOC.yaml new file: src/yolov5_ros/src/yolov5/data/VisDrone.yaml new file: src/yolov5_ros/src/yolov5/data/coco.yaml new file: src/yolov5_ros/src/yolov5/data/coco128.yaml new file: src/yolov5_ros/src/yolov5/data/hyps/hyp.Objects365.yaml new file: src/yolov5_ros/src/yolov5/data/hyps/hyp.VOC.yaml new file: src/yolov5_ros/src/yolov5/data/hyps/hyp.scratch-high.yaml new file: src/yolov5_ros/src/yolov5/data/hyps/hyp.scratch-low.yaml new file: src/yolov5_ros/src/yolov5/data/hyps/hyp.scratch-med.yaml new file: src/yolov5_ros/src/yolov5/data/images/bus.jpg new file: src/yolov5_ros/src/yolov5/data/images/zidane.jpg new file: src/yolov5_ros/src/yolov5/data/mydata.yaml new file: src/yolov5_ros/src/yolov5/data/scripts/download_weights.sh new file: src/yolov5_ros/src/yolov5/data/scripts/get_coco.sh new file: src/yolov5_ros/src/yolov5/data/scripts/get_coco128.sh new file: src/yolov5_ros/src/yolov5/data/scripts/get_imagenet.sh new file: src/yolov5_ros/src/yolov5/data/xView.yaml new file: src/yolov5_ros/src/yolov5/detect.py new file: src/yolov5_ros/src/yolov5/export.py new file: src/yolov5_ros/src/yolov5/hubconf.py new file: src/yolov5_ros/src/yolov5/models/__init__.py new file: src/yolov5_ros/src/yolov5/models/common.py new file: src/yolov5_ros/src/yolov5/models/experimental.py new file: src/yolov5_ros/src/yolov5/models/hub/anchors.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov3-spp.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov3-tiny.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov3.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5-bifpn.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5-fpn.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5-p2.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5-p34.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5-p6.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5-p7.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5-panet.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5l6.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5m6.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5n6.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5s-ghost.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5s-transformer.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5s6.yaml new file: src/yolov5_ros/src/yolov5/models/hub/yolov5x6.yaml new file: src/yolov5_ros/src/yolov5/models/tf.py new file: src/yolov5_ros/src/yolov5/models/yolo.py new file: src/yolov5_ros/src/yolov5/models/yolov5l.yaml new file: src/yolov5_ros/src/yolov5/models/yolov5m.yaml new file: src/yolov5_ros/src/yolov5/models/yolov5n.yaml new file: src/yolov5_ros/src/yolov5/models/yolov5s.yaml new file: src/yolov5_ros/src/yolov5/models/yolov5x.yaml new file: src/yolov5_ros/src/yolov5/requirements.txt new file: src/yolov5_ros/src/yolov5/setup.cfg new file: src/yolov5_ros/src/yolov5/train.py new file: src/yolov5_ros/src/yolov5/tutorial.ipynb new file: src/yolov5_ros/src/yolov5/utils/__init__.py new file: src/yolov5_ros/src/yolov5/utils/activations.py new file: src/yolov5_ros/src/yolov5/utils/augmentations.py new file: src/yolov5_ros/src/yolov5/utils/autoanchor.py new file: src/yolov5_ros/src/yolov5/utils/autobatch.py new file: src/yolov5_ros/src/yolov5/utils/aws/__init__.py new file: src/yolov5_ros/src/yolov5/utils/aws/mime.sh new file: src/yolov5_ros/src/yolov5/utils/aws/resume.py new file: src/yolov5_ros/src/yolov5/utils/aws/userdata.sh new file: src/yolov5_ros/src/yolov5/utils/benchmarks.py new file: src/yolov5_ros/src/yolov5/utils/callbacks.py new file: src/yolov5_ros/src/yolov5/utils/dataloaders.py new file: src/yolov5_ros/src/yolov5/utils/docker/Dockerfile new file: src/yolov5_ros/src/yolov5/utils/docker/Dockerfile-arm64 new file: src/yolov5_ros/src/yolov5/utils/docker/Dockerfile-cpu new file: src/yolov5_ros/src/yolov5/utils/downloads.py new file: src/yolov5_ros/src/yolov5/utils/flask_rest_api/README.md new file: src/yolov5_ros/src/yolov5/utils/flask_rest_api/example_request.py new file: src/yolov5_ros/src/yolov5/utils/flask_rest_api/restapi.py new file: src/yolov5_ros/src/yolov5/utils/general.py new file: src/yolov5_ros/src/yolov5/utils/google_app_engine/Dockerfile new file: src/yolov5_ros/src/yolov5/utils/google_app_engine/additional_requirements.txt new file: src/yolov5_ros/src/yolov5/utils/google_app_engine/app.yaml new file: src/yolov5_ros/src/yolov5/utils/loggers/__init__.py new file: src/yolov5_ros/src/yolov5/utils/loggers/clearml/README.md new file: src/yolov5_ros/src/yolov5/utils/loggers/clearml/__init__.py new file: src/yolov5_ros/src/yolov5/utils/loggers/clearml/clearml_utils.py new file: src/yolov5_ros/src/yolov5/utils/loggers/clearml/hpo.py new file: src/yolov5_ros/src/yolov5/utils/loggers/comet/README.md new file: src/yolov5_ros/src/yolov5/utils/loggers/comet/__init__.py new file: src/yolov5_ros/src/yolov5/utils/loggers/comet/comet_utils.py new file: src/yolov5_ros/src/yolov5/utils/loggers/comet/hpo.py new file: src/yolov5_ros/src/yolov5/utils/loggers/wandb/README.md new file: src/yolov5_ros/src/yolov5/utils/loggers/wandb/__init__.py new file: src/yolov5_ros/src/yolov5/utils/loggers/wandb/log_dataset.py new file: src/yolov5_ros/src/yolov5/utils/loggers/wandb/sweep.py new file: src/yolov5_ros/src/yolov5/utils/loggers/wandb/sweep.yaml new file: src/yolov5_ros/src/yolov5/utils/loggers/wandb/wandb_utils.py new file: src/yolov5_ros/src/yolov5/utils/loss.py new file: src/yolov5_ros/src/yolov5/utils/metrics.py new file: src/yolov5_ros/src/yolov5/utils/plots.py new file: src/yolov5_ros/src/yolov5/utils/torch_utils.py new file: src/yolov5_ros/src/yolov5/val.py
79 lines
2.8 KiB
Python
Executable File
79 lines
2.8 KiB
Python
Executable File
#!/usr/bin/env python
|
|
# Software License Agreement (BSD License)
|
|
#
|
|
# Copyright (c) 2008, Willow Garage, Inc.
|
|
# Copyright (c) 2016, Tal Regev.
|
|
# All rights reserved.
|
|
#
|
|
# Redistribution and use in source and binary forms, with or without
|
|
# modification, are permitted provided that the following conditions
|
|
# are met:
|
|
#
|
|
# * Redistributions of source code must retain the above copyright
|
|
# notice, this list of conditions and the following disclaimer.
|
|
# * Redistributions in binary form must reproduce the above
|
|
# copyright notice, this list of conditions and the following
|
|
# disclaimer in the documentation and/or other materials provided
|
|
# with the distribution.
|
|
# * Neither the name of the Willow Garage nor the names of its
|
|
# contributors may be used to endorse or promote products derived
|
|
# from this software without specific prior written permission.
|
|
#
|
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
|
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
# POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
import sys
|
|
import time
|
|
import math
|
|
import rospy
|
|
import cv2
|
|
|
|
import sensor_msgs.msg
|
|
from cv_bridge import CvBridge
|
|
|
|
|
|
# Send each image by iterate it from given array of files names to a given topic,
|
|
# as a regular and compressed ROS Images msgs.
|
|
class Source:
|
|
|
|
def __init__(self, topic, filenames):
|
|
self.pub = rospy.Publisher(topic, sensor_msgs.msg.Image)
|
|
self.pub_compressed = rospy.Publisher(topic + "/compressed", sensor_msgs.msg.CompressedImage)
|
|
self.filenames = filenames
|
|
|
|
def spin(self):
|
|
time.sleep(1.0)
|
|
cvb = CvBridge()
|
|
while not rospy.core.is_shutdown():
|
|
cvim = cv2.imload(self.filenames[0])
|
|
self.pub.publish(cvb.cv2_to_imgmsg(cvim))
|
|
self.pub_compressed.publish(cvb.cv2_to_compressed_imgmsg(cvim))
|
|
self.filenames = self.filenames[1:] + [self.filenames[0]]
|
|
time.sleep(1)
|
|
|
|
|
|
def main(args):
|
|
s = Source(args[1], args[2:])
|
|
rospy.init_node('Source')
|
|
try:
|
|
s.spin()
|
|
rospy.spin()
|
|
outcome = 'test completed'
|
|
except KeyboardInterrupt:
|
|
print "shutting down"
|
|
outcome = 'keyboard interrupt'
|
|
rospy.core.signal_shutdown(outcome)
|
|
|
|
if __name__ == '__main__':
|
|
main(sys.argv)
|