#include opencv2coreutilsloggerhpp #include opencv2opencvhpp #include vector #include cmath #include numeric #include string #include iostream #include ostream using namespace cv; using namespace std;
import cv2 import numpy as np
def getDarts(pic1_ad, pic2_ad): pic1 = cv2.imread(pic1_ad, cv2.IMREAD_COLOR) pic2 = cv2.imread(pic2_ad, cv2.IMREAD_COLOR)
if pic1 is None:
print("打开失败")
else:
pic1_HSV = cv2.cvtColor(pic1, cv2.COLOR_BGR2HSV)
pic2_HSV = cv2.cvtColor(pic2, cv2.COLOR_BGR2HSV)
result = np.zeros_like(pic1)
Height, Width, _ = pic1.shape
for i in range(Height):
for j in range(Width):
HSIpixels1 = pic1_HSV[i, j]
HSIpixels2 = pic2_HSV[i, j]
if abs(HSIpixels1[0] - HSIpixels2[0]) > 30:
result[i, j] = pic2[i, j]
if np.count_nonzero(result) > 0:
cv2.imshow("Darts", result)
cv2.waitKey(0)
if name == "main": pic1_ad = "F://Brochure//1.JPG" pic2_ad = "F://Brochure//2.JPG"
img1 = cv2.imread(pic1_ad)
img2 = cv2.imread(pic2_ad)
cv2.imshow("1.JPG", img1)
cv2.waitKey(0)
cv2.imshow("2.JPG", img2)
cv2.waitKey(0)
getDarts(pic1_ad, pic2_ad
原文地址: https://www.cveoy.top/t/topic/hQtB 著作权归作者所有。请勿转载和采集!