簡體   English   中英

紅色物體探測器 - python-opencv

[英]Red Object Detector - python-opencv

我想使用open cv的histrogram實用程序檢測圖像的蒙版區域內的紅色對象。 這是我生成組織圖的方法 - 它被打包成一個類;

import cv2
import numpy as np

class red_detector:

def __init__(self, image):

    mask = self.get_mask(image)
    histogram = cv2.calcHist([image], ['r'], mask, [256], [0, 256])
    #some functionality to see whether the volume of red is above a certain amount to denote a red object within the mask


def get_mask(self, image):

    mask = np.zeros(image.shape[:2], np.uint8)
    mask[100:300, 100:400] = 255
    return mask

我現在想通過訪問直方圖對象的紅色強度參數來判斷紅色物體是否在遮蔽區域內,並查看某個閾值以上的強度是否積分到表示紅色物體存在的值,我是不確定如何從對象訪問此數據。

我認為在這種情況下使用直方圖不是最好的選擇。 通常在這種情況下,最簡單(通常 - 足夠好)的選項是:

  • 將圖像轉換為HSV顏色空間
  • 使用inRange函數查找具有某種顏色的圖像部分
  • 找到上一步結果的最大輪廓。 如果此輪廓大於某個閾值,則表示您反對。

您必須自己找到的inRange函數的值。 請注意,在HSV顏色模型中,色調通道的值對您來說是最重要的(因為它負責顏色)。

是我上面描述的一些例子。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM