新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
pythonopencv直方圖反向投影的方法-創(chuàng)新互聯(lián)
本文介紹了python opencv 直方圖反向投影的方法,分享給大家,具體如下:
目標(biāo):
直方圖反向投影
原理:
反向投影可以用來做圖像分割,尋找感興趣區(qū)間。它會(huì)輸出與輸入圖像大小相同的圖像,每一個(gè)像素值代表了輸入圖像上對(duì)應(yīng)點(diǎn)屬于目標(biāo)對(duì)象的概率,簡言之,輸出圖像中像素值越高的點(diǎn)越可能代表想要查找的目標(biāo)。直方圖投影經(jīng)常與camshift(追蹤算法)算法一起使用。
算法實(shí)現(xiàn)的方法,首先要為包含我們感興趣區(qū)域的圖像建立直方圖(樣例要找一片草坪,其他的不要)。被查找的對(duì)象最好是占據(jù)整個(gè)圖像(圖像里全是草坪)。最好使用顏色直方圖,物體的顏色信息比灰度圖像更容易被分割和識(shí)別。再將顏色直方圖投影到輸入圖像查找目標(biāo),也就是找到輸入圖像中每一個(gè)像素點(diǎn)的像素值在直方圖中對(duì)應(yīng)的概率,這樣就得到一個(gè)概率圖像,最后設(shè)置適當(dāng)?shù)拈撝祵?duì)概率圖像進(jìn)行二值化。
numpy算法:
建立兩幅顏色直方圖,目標(biāo)圖像直方圖(M),輸入圖像直方圖(I)
import cv2 import numpy as np from matplotlib import pyplot as plt #roi圖片,就想要找的的圖片 roi = cv2.imread('3.jpg') hsv = cv2.cvtColor(roi,cv2.COLOR_BGR2HSV) #目標(biāo)搜索圖片 target = cv2.imread('33.jpg') hsvt = cv2.cvtColor(target,cv2.COLOR_BGR2HSV) #創(chuàng)建直方圖 M = cv2.calcHist([hsv],[0,1],None,[180,256],[0,180,0,256]) I = cv2.calcHist([hsvt],[0,1],None,[180,256],[0,180,0,256])
網(wǎng)頁題目:pythonopencv直方圖反向投影的方法-創(chuàng)新互聯(lián)
本文路徑:http://www.dlmjj.cn/article/picsd.html