Python识别小图片在大图片中的位置 - OpenCV示例
要识别从大图片中截取的小图片所在的位置,可以使用图像处理库如OpenCV来实现。下面是一个使用OpenCV的示例代码:
import cv2
import numpy as np
def find_image_location(big_image_path, small_image_path):
# 读取大图片和小图片
big_image = cv2.imread(big_image_path)
small_image = cv2.imread(small_image_path)
# 在大图片中寻找小图片的位置
result = cv2.matchTemplate(big_image, small_image, cv2.TM_CCOEFF_NORMED)
min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(result)
top_left = max_loc
bottom_right = (top_left[0] + small_image.shape[1], top_left[1] + small_image.shape[0])
return top_left, bottom_right
# 使用示例
big_image_path = 'big_image.jpg'
small_image_path = 'small_image.jpg'
top_left, bottom_right = find_image_location(big_image_path, small_image_path)
print('小图片的位置:')
print('左上角坐标:', top_left)
print('右下角坐标:', bottom_right)
在代码中,find_image_location函数接受大图片和小图片的路径作为参数,并使用cv2.matchTemplate函数在大图片中寻找小图片的位置。最后返回小图片的左上角和右下角坐标。
注意,代码中的'big_image.jpg'和'small_image.jpg'分别表示大图片和小图片的文件路径,需要根据实际情况进行替换。
原文地址: https://www.cveoy.top/t/topic/o608 著作权归作者所有。请勿转载和采集!