Python使用通道数设置图像

1.R通道(红色通道)

1.1 导入io,data库

from skimage import io,data

1.2 读取该路径的图片

img=io.imread(r"C:\Users\86130\Desktop\111.jpg")

1.3 检查图像的红色通道(第三个参数,索引为0),并将所有大于170的值设置为True,其他值设置为False。reddish表示图像中哪些像素是红色的

reddish = img[:,:,0]>170

img[reddish] = [255,0,0]

1.4 显示图像

io.imshow(img)

1.5 运行结果1:

尝试:

在上述代码中,我修改了绿色通道的参数值,得到了一个新的颜色:黄色(将R通道和G通道的值都设置为255)代码+结果截图  如下:

2.G通道

和R通道同理

img[reddish] = [0,255,0]

这里将第二个参数值改成255,就是纯绿色

2.1运行结果2:

值越小,颜色越深

3.B通道

和R通道同理

img[reddish] = [0,0,255]

第三个参数为255,就是纯蓝色

运行结果3:

4.对图像进行二值化处理

4.1二值化的目的:

将图像上的像素点设置为两种颜色(黑色和白色),在二值化处理中,会设置一个值,当图像中的像素点的值小于这个设定值时,像素点值为0(黑色),否则为255(白色)

4.2对代码逐行解释

from skimage import io,data,color

img=io.imread(r"C:\Users\86130\Desktop\111.jpg")

img_gray = color.rgb2gray(img)

rows,cols = img_gray.shape

for i in range(rows):
    for j in range(cols):
        if(img_gray[i,j]<=0.5):
            img_gray[i,j]=0
        else:
            img_gray[i,j]=1

io.imshow(img_gray)                       

第1行代码:从skimage中导入io,data,color包

第2行代码:读取图片,存到img变量中

第3行代码:将图像转换为灰度图像,使用color下的rgb2gray方法

第4行代码:获取图像的行数和列数

第5、6行代码:用i、j循环遍历图像的像素值

第7、8行代码:如果像素值小于等于0.5时,像素值等于0,设置为黑色

第9、10行代码:相反,像素值等于1,设置为白色

第11行代码:显示二值化处理后的图像

运行结果4:

原图在这里:

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值