2D_ROS_YOLOv3

YOLO ROS: Real-Time Object Detection for ROS

  @misc{bjelonicYolo2018,
    author = {Marko Bjelonic},
    title = {{YOLO ROS}: Real-Time Object Detection for {ROS}},
    howpublished = {\url{https://github.com/leggedrobotics/darknet_ros}},
    year = {2016--2018},
  }
cd catkin_ws/src/
git clone --recursive https://github.com/leggedrobotics/darknet_ros.git
cd  ..
catkin_make -DCMAKE_BUILD_TYPE=Release

설정 파일

입력 topic : ~/catkin_ws/src/darknet_ros/darknet_ros/config/ros.yaml

  camera_reading:
    topic: /camera/image_color
    queue_size: 1

라벨 : ~/catkin_ws/src/darknet_ros/darknet_ros/config/yolov3.yaml

학습 설정 : ~/catkin_ws/src/darknet_ros/darknet_ros/yolo_network_config/cfg/yolov3.cfg

실행 : ~/catkin_ws/src/darknet_ros/darknet_ros/launch

  • darknet_ros.launch : YOLOv2-tiny
  • yolo_v3.launch : YOLOv3

ros.yaml과 yolov3.yaml은 launch파일에서 수정

PyTorch-YOLOv3

@article{yolov3,
  title={YOLOv3: An Incremental Improvement},
  author={Redmon, Joseph and Farhadi, Ali},
  journal = {arXiv},
  year={2018}
}

PyTorch 로 YOLO v3 구현한 것을 Colaboratory 에서 돌려보자

wget https://raw.githubusercontent.com/nicewook/datascience_exercise/master/PyTorch_YOLOv3.ipynb

뭐 구현하기 따라 다른데 GPU를 최대한 활용하시려면 실시간 이미지를 여러장 모아서 배치 하나 만드셔서 forward하시면되고 아니면 한장한장 하셔야되고요. Dimension 첫번째에 1 추가하셔서 만드셔야해요. 1추가 한후에 torch.cat으로 합쳐서 batch로 만들어서 쓰셔도되고요

unsqueeze였던거같은데 dimension추가하는 함수가 있습니다.

x = torch.from_numpy(transform(img)[0]).permute(2, 0, 1) x = Variable(x.unsqueeze(0))

results matching ""

    No results matching ""