python-知道图像中的单一RGB颜色,而不是OpenCV的范围

我正在使用“ OpenCV”,我想在图像中显示一种颜色.现在我做了这个

img = cv2.imread('im02.jpg')

L1 = np.array([255,102])
U1 = np.array([255,102])

m1 = cv2.inRange(img,L1,U1)

r1 = cv2.bitwise_and(img,img,mask=m1)

#print(r1.any()) #know if all the image is black

cv2.imshow("WM",np.hstack([img,r1]))

可以,但是在需要一定范围的颜色色调时可以使用.但是就我而言,我想知道RGB的确切值,目前我正在上下范围写入相同的值,但我试图做得更好,如何在没有范围的情况下做到这一点?

非常感谢你.

最佳答案
我想我理解你的问题.尝试这个:

#!/usr/local/bin/python3
import numpy as np
import cv2

# Open image into numpy array
im=cv2.imread('start.png')

# Sought colour
sought = [255,102]

# Find all pixels where the 3 RGB values match the sought colour
matches = np.all(im==sought,axis=2)

# Make empty (black) output array same size as input image
result = np.zeros_like(im)

# Make anything matching our sought colour into magenta
result[matches] = [255,255]

# Or maybe you want to color the non-matching pixels yellow
result[~matches] = [0,255,255]

# Save result
cv2.imwrite("result.png",result) 

start.png看起来像这样-您的颜色介于绿色和蓝色之间:

enter image description here

result.png看起来像这样:

enter image description here

相关文章

在这篇文章中,我们深入学习了XPath作为一种常见的网络爬虫技巧。XPath是一种用于定位和选择XML文档中特...
祝福大家龙年快乐!愿你们的生活像龙一样充满力量和勇气,愿你们在新的一年里,追逐梦想,勇往直前,不...
今天在爬虫实战中,除了正常爬取网页数据外,我们还添加了一个下载功能,主要任务是爬取小说并将其下载...
完美收官,本文是爬虫实战的最后一章了,所以尽管本文着重呈现爬虫实战,但其中有一大部分内容专注于数...
JSON是一种流行的数据传输格式,Python中有多种处理JSON的方式。官方的json库是最常用的,它提供了简单...
独立样本T检验适用于比较两组独立样本的均值差异,而配对T检验则适用于比较同一组样本在不同条件下的均...