CV2.imread得到的图像显示成蓝色的原因和3种BGR转RGB的方法 |
您所在的位置:网站首页 › zenly为什么变成蓝色 › CV2.imread得到的图像显示成蓝色的原因和3种BGR转RGB的方法 |
新手使用CV2.imread后,直接显示,得到下面这种蓝色的图片,与原图差异很大: CV2的imread默认存储的颜色空间顺序是BGR,与matplot显示用的imshow的颜色顺序RGB正好相反,那么怎么转换呢? 经常使用的有 方法1: myimg=myimg[...,::-1] 这种方法初学者一般看不懂,::-1表示的是逆序,前面...我也不知道什么意思,官方给出的转换就是这样。 方法2: 使用库函数,简单易懂,但是不知道内部怎么搞的: myimg = cv2.cvtColor(myimg,cv2.COLOR_BGR2RGB)方法3: 也是我的原创方法,其实就是使用索引将[:,:,0]和[:,:,2]互换位置即可,该方法可以展示BGR到RGB的转换,即是将R通过和B通过互换位置即可。 index = [2,1,0] myimg = myimg[:,:,index]显示正常。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |