Computer Visionは、人工知能・機械学習分野における重要な概念・技術です。
Computer Vision(コンピュータビジョン、CV)は、コンピュータに画像や動画を「見る」能力を与え、視覚情報から意味のある情報を抽出・理解・判断する技術分野です。1960 年代から研究されてきましたが、2012 年の AlexNet による深層学習革命以降、急速に発展し、現代では自動運転、医療診断、顔認証、産業検査、AR/VR など社会インフラを支える基盤技術となっています。
画像全体を 1 つのカテゴリに分類:
画像内の物体の位置(バウンディングボックス)とクラスを検出:
画像の各ピクセルにクラスを割り当てる:
同じクラスの異なる個体を区別:
Semantic + Instance の統合:
動画中の物体を時間方向に追跡:
人物の関節位置を推定:
顔の検出と識別:
画像中の文字を認識:
テキスト等から画像を生成:
| データセット | タスク | サイズ |
|---|---|---|
| ImageNet | 分類 | 1,400 万枚、1,000 クラス |
| COCO | 検出・セグ | 33 万枚、80 クラス |
| Pascal VOC | 検出・セグ | 1 万枚 |
| Cityscapes | セグ(都市) | 25,000 枚 |
| Open Images | 検出 | 900 万枚 |
| LVIS | 長尾分布 | 16 万枚 |
| ADE20K | セグ | 22,000 枚 |
| CelebA | 顔 | 20 万枚 |
| LFW | 顔認識 | 13,000 枚 |
| KITTI | 自動運転 | 15,000 枚 |
| 用途 | GPU | VRAM |
|---|---|---|
| 学習入門 | RTX 4060 | 8GB |
| 標準学習 | RTX 4070 Ti | 16GB |
| 大規模学習 | RTX 4090 | 24GB |
| 研究用途 | A100 | 40-80GB |
# 基本
pip install opencv-python torch torchvision
# 検出
pip install ultralytics # YOLO
# 高度なモデル
pip install transformers # ViT、CLIP、SAM
pip install timm # モデル集
# OCR
pip install paddlepaddle paddleocr
# 追加ライブラリ
pip install albumentations # データ拡張
pip install kornia # 微分可能画像処理
from ultralytics import YOLO
# モデルロード
model = YOLO('yolo11n.pt')
# 画像で推論
results = model('image.jpg')
# 結果の可視化
for r in results:
r.show()
# Webcam リアルタイム
results = model(0, show=True)
| モデル | GPU | FPS |
|---|---|---|
| YOLOv11n | RTX 4060 | 200+ |
| ResNet-50 | RTX 4070 | 500+ |
| ViT-Base | RTX 4070 | 300 |
| Mask R-CNN | RTX 4090 | 30 |
| SAM | RTX 4090 | 5-10 |
| モデル | データ | GPU | 時間 |
|---|---|---|---|
| ResNet-50 | ImageNet | RTX 4090 | 3-5 日 |
| YOLOv11m | COCO | RTX 4090 | 1-2 日 |
| ViT-Base | ImageNet-21K | RTX 4090 | 1-2 週間 |