イントロダクション
Capybara は主に以下の部分で構成されています:
- Vision:画像や動画処理など、コンピュータビジョンに関連する機能。
- Structures:BoundingBox や Polygon など、構造化データを処理するモジュール。
- ONNXEngine:ONNX 形式のモデルをサポートし、ONNX 推論機能を提供。
- Utils:システム情報やファイル処理などの補助的なツール関数を含む。
- Tests:各種関数の機能を検証するテストファイル。
Vision
Vision モジュールは、画像や動画データの処理に特化しており、豊富なコンピュータビジョンツールを提供します。
ディレクトリ構成:
vision
├── functionals.py # 基本的な画像処理関数(フィルタリング、変換など)
├── geometric.py # 幾何学的な処理(回転、スケーリングなど)
├── improc.py # 画像処理のコアロジック
├── ipcam # ネットワークカメラストリーム処理モジュール
├── morphology.py # 形態学的な処理(膨張、収縮など)
├── videotools # 動画ツール関連モジュール
└── visualization # 可視化ツール(枠線描画、アノテーションなど)
主な機能:
- 画像と動画の読み込み、処理、可視化。
- 複数のフォーマットやソース(ローカルファイル、ネットワークカメラなど)をサポート。
Structures
Structures モジュールは、構造化データを処理するためのもので、主にコンピュータビジョンやデータ分析のシーンで使用されます。
ディレクトリ構成:
structures
├── functionals.py # 関連する機能関数
├── boxes.py # Box、Boxesデータ構造
├── keypoints.py # Keypointsデータ構造
└── polygons.py # Polygon、Polygonsデータ構造
主な機能:
- Box、Keypoints、Polygon などの構造化データの処理。
- インターセクション、ユニオン、スケーリングなどの操作をサポート。
ONNXEngine
ONNXEngine モジュールは、ONNX 形式のモデル推論に関連する機能を提供します。
ディレクトリ構成:
onnxengine
├── engine.py # コア推論ロジック
├── __init__.py # 初期化ファイル
└── metadata.py # モデルメタデータ管理
主な機能:
- ONNX モデルの読み込みと推論をサポート。
Utils
Utils モジュールは、さまざまな補助的なツール関数を含んでおり、広範囲にわたる機能を提供します。
ディレクトリ構成:
utils
├── custom_path.py # カスタムパス操作
├── custom_tqdm.py # プログレスバーのツール
├── files_utils.py # ファイル処理関数
├── powerdict.py # 強化版辞書操作
├── system_info.py # システム情報のチェック
├── time.py # 時間処理ツール
└── utils.py # 汎用的なツール関数
主な機能:
- ファイル処理とシステム情報のチェック。
- プログレスバーや強化版辞書などのカスタムツールを提供。
Tests
Tests モジュールは、システムの機能が正しいかどうかを検証するために使用されます。
主な機能:
- 各モジュールのユニットテストを含む。
- クイック回帰と機能検証を提供。
以上が Capybara 各モジュールの概要です。
詳細な使用方法については、対応する API ドキュメントやサンプルコードをご覧ください。