如何根据RGB像素比率过滤图像?

时间:2019-10-16 05:00:38

标签: python

如何使用python创建基于图像中像素的RGB比的滤色镜?

我是python的初学者,在为图像创建颜色过滤时遇到一些问题。

我正在尝试使用opencv(python)检测RGB图像中的蓝色物体。 我可以过滤掉图像中的大多数蓝色物体,但是我的代码无法过滤低强度的蓝色物体。我的代码:

#b=img1[:,:,0]
#img1[:,:,1]=0
#img1[:,:,2]=0
#b[b<220]=0

ROI中有一些像素由于光散射而具有更高的强度;因此,当我降低阈值以将低强度像素保持在ROI中时,许多其他强度较高的不需要像素会保留在我的输出图像中。 因此,我正在尝试使用这些像素的RGB比率,但是我的代码不起作用!感谢您在这方面的帮助。谢谢。

import numpy as np
import cv2
img1 =cv2.imread('IMG_1217.jpg',1)
img11=cv2.cvtColor(img1, cv2.COLOR_BGR2RGB)
b=img11[:,:,0]
r=img11[:,:,1]
g=img11[:,:,2]
a=np.divide(b,g)
c=np.divide(b,r)
a[a>1.9]=1
c[c>1.3]=1
img11=cv2.merge([b,a,c])
cv2.imshow('img11',img11)

0 个答案:

没有答案