19

PIL ライブラリを使用して、大きな画像からサブ画像を見つけたいです。それが見つかった座標も知りたいですか?

4

3 に答える 3

21
import cv2  
import numpy as np  
image = cv2.imread("Large.png")  
template = cv2.imread("small.png")  
result = cv2.matchTemplate(image,template,cv2.TM_CCOEFF_NORMED)  
print np.unravel_index(result.argmax(),result.shape)

これは私にとってはうまく機能し、効率的な方法です。

于 2013-08-06T08:57:58.817 に答える
0

おそらくテンプレートマッチングを介して、オブジェクト検出を実行したいようです。ピクセルごとの正確な一致を探している場合を除き、これは些細な問題ではありません。また、PIL はこの種のことを行うためのものではありません。

Jan が OpenCV を試すべきだというのは正しいです。これは、優れた Python バインディングを備えた堅牢なコンピューター ビジョン ライブラリです。

一致した領域の周りに四角形を描画する Python の短い例を次に示します: https://github.com/jungilhan/Tutorial/blob/master/OpenCV/templateMatching.py

于 2013-07-17T19:46:47.913 に答える