基于数字图像处理的条形码识别方法 python

该博客介绍了一种使用Python进行数字图像处理来识别条形码的方法。首先,将图像转换为灰度图,然后进行二值化处理,接着通过膨胀操作增强条形码的边界。通过寻找最大连通轮廓并计算边界框,确定条形码的位置。最后,显示了带有标记条形码区域的图像结果。
摘要由CSDN通过智能技术生成

#寻找最大连通轮廓,并返回其坐标和高度、宽度

def obtain_contour_image(img):

    #if (cv2.__version__[0] > 3):

    contours, hierarchy = cv2.findContours(img, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)

    #else:

        #im2, contours, hierarchy = cv2.findContours(binary, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)

    x = 0

    y = 0

    w = 0

    h = 0

    if len(contours) != 0:

      

 

        

        c = max(contours, key=cv2.contourArea)

        x, y, w, h = cv2.boundingRect(c)

    return x,y,w,h

 

    huidu = obtain_gray_image(src)#灰度图

    #blur = obtain_mean_filter_image(huidu)#滤波后的图

    #cv2.imshow("高斯滤波后的图像", blur)

    binary = obtain_threshold_image(huidu)#二值化后的图

    cv2.imshow("二值化后的图像", binary)

    kernel = cv2.getStructuringElement

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值