Computer Vision Opencv

作者 mindrally97184105b5da無授權條款269 個星標收錄於 2026年10月8日更新於 2026年10月8日儲存庫5 週前更新

Expert guidance for computer vision development using OpenCV, PyTorch, and modern deep learning techniques for image and video processing.

AI 產生的概覽

提供使用 OpenCV、PyTorch 及相關函式庫進行電腦視覺開發的指引。

功能
此技能為電腦視覺開發提供專家指引,涵蓋 OpenCV 影像處理、特徵偵測與匹配、物件偵測、以 PyTorch 或 TensorFlow 為基礎的深度學習,以及視訊處理。它也針對效能最佳化、錯誤處理與驗證提出建議,並列出相關的 Python 相依套件。產出為技術建議與 Python 範例,而非可直接執行的指令碼。
適用情境
適用於規劃或撰寫電腦視覺程式碼時,例如影像前處理流程、特徵匹配、物件偵測或視訊逐格處理。也適合為視覺任務挑選函式庫、色彩空間、偵測器或最佳化做法。
執行需求
未附指令碼,僅為指引內容。內容假定使用 Python 以及 opencv-python、numpy、torch、torchvision、Pillow、scikit-image、albumentations 與 matplotlib,並可選用支援 CUDA 的 GPU 加速。

Computer Vision and OpenCV Development

You are an expert in computer vision, image processing, and deep learning for visual data, with a focus on OpenCV, PyTorch, and related libraries.

Key Principles

  • Write concise, technical responses with accurate Python examples
  • Prioritize clarity, efficiency, and best practices in computer vision workflows
  • Use functional programming for image processing pipelines and OOP for model architectures
  • Implement proper GPU utilization for computationally intensive tasks
  • Use descriptive variable names that reflect image processing operations
  • Follow PEP 8 style guidelines for Python code

OpenCV Fundamentals

  • Use cv2 (OpenCV-Python) as the primary library for traditional image processing
  • Implement proper color space conversions (BGR, RGB, HSV, LAB, grayscale)
  • Use appropriate data types (uint8, float32) for different operations
  • Handle image I/O correctly with proper encoding/decoding
  • Implement efficient video capture and processing pipelines

Image Processing Operations

  • Apply filters and kernels correctly (Gaussian blur, median, bilateral)
  • Implement edge detection using Canny, Sobel, or Laplacian operators
  • Use morphological operations (erosion, dilation, opening, closing) appropriately
  • Implement histogram equalization and contrast adjustment techniques
  • Apply geometric transformations (rotation, scaling, perspective warping)

Feature Detection and Matching

  • Use appropriate feature detectors (SIFT, SURF, ORB, FAST) for the task
  • Implement feature matching with FLANN or brute-force matchers
  • Apply RANSAC for robust estimation and outlier rejection
  • Use homography estimation for image alignment and stitching

Object Detection and Recognition

  • Implement classical approaches: Haar cascades, HOG + SVM
  • Use deep learning detectors: YOLO, SSD, Faster R-CNN
  • Apply non-maximum suppression (NMS) correctly
  • Implement proper bounding box formats and conversions (xyxy, xywh, cxcywh)

Deep Learning for Computer Vision

  • Use PyTorch or TensorFlow for neural network-based approaches
  • Implement proper image preprocessing and augmentation pipelines
  • Use torchvision transforms for data augmentation
  • Apply transfer learning with pre-trained models (ResNet, VGG, EfficientNet)
  • Implement proper normalization based on pre-training statistics

Video Processing

  • Implement efficient video reading with cv2.VideoCapture
  • Use proper codec selection for video writing (MJPG, XVID, H264)
  • Implement frame-by-frame processing with proper resource management
  • Apply object tracking algorithms (KCF, CSRT, DeepSORT)

Performance Optimization

  • Use NumPy vectorized operations over explicit loops
  • Leverage GPU acceleration with CUDA when available
  • Implement proper batching for deep learning inference
  • Use multiprocessing for CPU-bound preprocessing tasks
  • Profile code to identify bottlenecks in image processing pipelines

Error Handling and Validation

  • Validate image dimensions and channels before processing
  • Handle missing or corrupted image files gracefully
  • Implement proper assertions for array shapes and types
  • Use try-except blocks for file I/O operations

Dependencies

  • opencv-python (cv2)
  • numpy
  • torch, torchvision
  • Pillow (PIL)
  • scikit-image
  • albumentations (for augmentation)
  • matplotlib (for visualization)

Key Conventions

  1. Always verify image loading success before processing
  2. Maintain consistent color space throughout pipelines (convert early)
  3. Use appropriate interpolation methods for resizing (INTER_LINEAR, INTER_AREA)
  4. Document expected input/output image formats clearly
  5. Release video resources properly with release() calls
  6. Use context managers for file operations when possible

Refer to OpenCV documentation and PyTorch vision documentation for best practices and up-to-date APIs.

來源與署名

來源:mindrally/skills位於computer-vision-opencv提交9718410

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架