2012-06-29 10 views
13

Nehmen wir an, ich habe zwei Binärbilder der gleichen Größe. Wie finde ich den Schnittpunkt zwischen den zwei Binärbildern? Nur Pixel mit derselben Koordinate (Position) auf den zwei Bildern, die weiß sind (grau - 255), ergeben weiße Pixel auf dem Ausgabebild (Schnittpunkt).OpenCV - Schnittpunkt zwischen zwei Binärbildern

+0

Sie können '&' und '|' Operatoren verwenden, wie in http://stackoverflow.com/questions/17961092/how-do-i-do-boolean-operation-on-mat-such-asa- beschrieben mat3-mat1-mat2 –

Antwort

1

Hier ist, wie dies in Python zu tun (mit den Bildern oben) :

import cv2 

img1 = cv2.imread('black_top_right_triangle.png',0) 
img2 = cv2.imread('black_bottom_right_triangle.png',0) 

img_bwa = cv2.bitwise_and(img1,img2) 
img_bwo = cv2.bitwise_or(img1,img2) 
img_bwx = cv2.bitwise_xor(img1,img2) 

cv2.imshow("Bitwise AND of Image 1 and 2", img_bwa) 
cv2.imshow("Bitwise OR of Image 1 and 2", img_bwo) 
cv2.imshow("Bitwise XOR of Image 1 and 2", img_bwx) 
cv2.waitKey(0) 
cv2.destroyAllWindows() 

Wenn Sie OpenCV für Python installieren müssen, sparen Sie Zeit, indem Sie these directions folgen (die Installation war in der Vergangenheit ziemlich schmerzhaft).

Verwandte Themen