python-opencv里面图片无法imshow的处理

def thresholding(img):
    
    x_thresh = utils.abs_sobel_thresh(img, orient='x', thresh_min=180 ,thresh_max=255)
    mag_thresh = utils.mag_thresh(img, sobel_kernel=3, mag_thresh=(50, 100))
    dir_thresh = utils.dir_threshold(img, sobel_kernel=3, thresh=(0.7, 1.3))
    hls_thresh = utils.hls_select(img, thresh=(180, 255))
    lab_thresh = utils.lab_select(img, thresh=(155, 200))
    luv_thresh = utils.luv_select(img, thresh=(225, 255))



    threshholded = np.zeros_like(x_thresh)
    threshholded[((x_thresh == 1) & (mag_thresh == 1)) |
                 ((dir_thresh == 1) & (hls_thresh == 1)) |
                 (lab_thresh == 1) |
                 (luv_thresh == 1)] = 1

    return threshholded

例如这里的threshholded代码块,这里读出来的图片格式为布尔类型,最后的融合部分转换成为了数值1,0类型,但是直接imshow出来的图片使黑图,无效果,这里就使格式问题了。

下面上代码,终极解决办法

import matplotlib.pyplot as plt

plt.imshow(img)

plt.show()

改用后便可以读出图片了,百试百灵

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值