gpt4 book ai didi

python - 检测图像中间的颜色(OpenCV、Python)

转载 作者:行者123 更新时间:2023-12-02 16:54:27 24 4
gpt4 key购买 nike

我有这 3 张图像(考虑“图像”整个正方形,而不仅仅是里面的数字 - 这只是为了演示目的):

im1 im2 im3

我想要做的是检测每个中间(中心)的颜色。因此,在中心有一个区域(正方形或圆形)并使用 OpenCV 检测哪个是颜色。
类似于颜色选择器的东西...

目的是有 3 个值,每个图像 (BGR) 有 3 个值。

例子:

im4

ROI 中的颜色是什么?

谢谢

编辑

使用此代码,我可以找到图像的中间并应用蒙版。

import cv2
import numpy as np

img = cv2.imread("im2.png")

height, width, depth = img.shape
circle_img = np.zeros((height, width), np.uint8)

mask = cv2.circle(circle_img, (int(width / 2), int(height / 2)), 20, 1, thickness=-1)
masked_img = cv2.bitwise_and(img, img, mask=circle_img)

cv2.imshow("masked", masked_img)
cv2.waitKey(0)

现在剩下的就是找到被 mask 区域的BGR(可见的...)

最佳答案

import cv2
import numpy as np

img = cv2.imread('image.png')
height, width = img.shape[:2]
# Change these values to fit the size of your region of interest
roi_size = 10 # (10x10)
roi_values = img[(height-roi_size)/2:(height+roi_size)/2,(width-roi_size)/2:(width+roi_size)/2]
mean_blue = np.mean(roi_values[:,:,0])
mean_green = np.mean(roi_values[:,:,1])
mean_red = np.mean(roi_values[:,:,2])

print("R: {} G: {} B: {}").format(mean_red, mean_green, mean_blue)

关于python - 检测图像中间的颜色(OpenCV、Python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50178248/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com