HumansXドキュメントセンター 公式サイトへ ↗

マシンビジョンシステムの概要

リンク Raspberry Piハードウェアプラットフォームをベースとしたマシンビジョンアプリケーションです。ROSとOpenCVを統合し、画像取得と視覚による色追跡を行います。

システム要件

  • ハードウェア:Raspberry Pi ZERO
  • オペレーティングシステム:Ubuntu 20.04
  • 通信フレームワーク:ROS Noetic
  • Python:3.8以上
  • ライブラリ:OpenCV 4.x
  • 周辺機器:USBカメラ
  • メモリ:RAM 2GB以上
  • ストレージ:空き容量3GB以上

ディレクトリ構成

分散アーキテクチャを採用しており、Raspberry Pi搭載車体側のプログラムと、PCの仮想マシン上で実行するプログラムで構成されます。

Raspberry Pi車体側プログラムのディレクトリ

vision_ws/                          # ROSワークスペース
├── build/                          # Catkinビルドディレクトリ(自動生成)
├── devel/                          # Catkin開発ファイルディレクトリ(自動生成)
├── .catkin_workspace               # Catkinワークスペース識別ファイル
└── src/                            # ソースコードディレクトリ
    ├── camera_test/                # カメラテスト用パッケージ
    │   ├── include/                # C++ヘッダファイルディレクトリ
    │   ├── launch/                 # launchファイルディレクトリ
    │   │   └── pub_imglaunch       # 画像配信用launchファイル
    │   ├── scripts/                # Pythonスクリプトディレクトリ
    │   │   ├── captured_image.jpg  # 撮影画像サンプル
    │   │   ├── get_csi_camera.py   # CSIカメラ取得スクリプト
    │   │   ├── image_pub.py        # 画像配信ノード
    │   │   ├── image_pub.py.save   # 画像配信スクリプトのバックアップ
    │   │   └── take_picture.py     # 撮影スクリプト
    │   ├── src/                    # C++ソースコードディレクトリ
    │   ├── CMakeLists.txt          # パッケージのビルド設定
    │   └── package.xml             # パッケージのメタデータと依存関係
    └── color_tracking/             # 色追跡パッケージ
        ├── CMakeLists.txt          # パッケージのビルド設定
        └── read.md                 # 説明ドキュメント

仮想マシン側プログラムのディレクトリ

unl_robot/                          # ROSワークスペースのルートディレクトリ
├── .vscode/                        # VSCode設定ディレクトリ
├── build/                          # Catkinビルドディレクトリ
├── devel/                          # Catkin開発ファイルディレクトリ
├── .catkin_workspace               # Catkinワークスペース識別ファイル
└── src/                            # ソースコードディレクトリ
    ├── navi/                       # ナビゲーションパッケージ
    ├── nviz.show/                  # RViz表示設定(と思われる)
    ├── slam/                       # SLAMパッケージ
    ├── video/                      # 映像処理パッケージ
    ├── vision_test/                # ビジョンテストパッケージ(主な開発パッケージ)
    │   ├── include/                # C++ヘッダファイルディレクトリ
    │   ├── launch/                 # launchファイルディレクトリ
    │   │   ├── color_trackinglaunch # 色追跡用launchファイル
    │   │   └── sub_imglaunch       # 画像購読用launchファイル
    │   ├── nviz/                   # RViz設定ディレクトリ
    │   ├── scripts/                # Pythonスクリプトディレクトリ
    │   │   ├── color_detect.py     # 色検出スクリプト
    │   │   ├── get_sth_hsv.py      # HSV値取得スクリプト
    │   │   └── image_sub.py        # 画像購読スクリプト
    │   ├── src_20250920_143626/    # ソースのバックアップディレクトリ(タイムスタンプ付き)
    │   ├── CMakeLists.txt          # パッケージのビルド設定
    │   ├── package.xml             # パッケージのメタデータと依存関係
    │   └── readme.md               # 説明ドキュメント

プロジェクト事例

  • ビジョン画像トピックの設計
  • ビジョン画像トピックの購読
  • 視覚による色追跡の設計
  • 視覚による色追跡の実験

情報交換の場

資料のダウンロード・技術サポートについては、HumansX株式会社までお問い合わせください。