• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Python-OpenCV实现图像缺陷检测的实例

    在Jupyter Notebook上使用Python+opencv实现如下图像缺陷检测。关于opencv库的安装可以参考:Python下opencv库的安装过程与一些问题汇总。

    1.实现代码

    import cv2
    import numpy
    from PIL import Image, ImageDraw, ImageFont
    
    #用于给图片添加中文字符
    def ImgText_CN(img, text, left, top, textColor=(0, 255, 0), textSize=20):
        if (isinstance(img, numpy.ndarray)):  #判断是否为OpenCV图片类型
            img = Image.fromarray(cv2.cvtColor(img, cv2.COLOR_BGR2RGB))
        draw = ImageDraw.Draw(img)
        fontText = ImageFont.truetype("font/simhei.ttf", textSize, encoding="utf-8")
        draw.text((left, top), text, textColor, font=fontText)
    return cv2.cvtColor(numpy.asarray(img), cv2.COLOR_RGB2BGR)
    
    #读取原图片
    image0=cv2.imread("0.bmp")
    cv2.imshow("image0", image0)
    #灰度转换
    gray0 = cv2.cvtColor(image0, cv2.COLOR_RGB2GRAY)
    cv2.imshow("gray0", gray0)for i in range(1,6):
        img0=cv2.imread(str(i)+".bmp")#原图片
        img=cv2.cvtColor(cv2.imread(str(i)+".bmp"),cv2.COLOR_RGB2GRAY)#灰度图
        #使用calcHist()函数计算直方图,反映灰度值的分布情况
        hist = cv2.calcHist([gray0], [0], None, [256], [0.0,255.0])
        h1 = cv2.calcHist([img], [0], None, [256], [0.0,255.0]) 
        #计算图片相似度
        result = cv2.compareHist(hist,h1,method=cv2.HISTCMP_BHATTACHARYYA)#巴氏距离比较,值越小相关度越高,最大值为1,最小值为0
        #print(result)
        #设定阈值为0.1,若相似度小于0.1则为合格,否则不合格
        if result 0.1:
            detect=ImgText_CN(img0, '合格', 10, 10, textColor=(255, 0, 0), textSize=30)
        else:
            detect=ImgText_CN(img0, '不合格', 10, 10, textColor=(255, 0, 0), textSize=30)
        cv2.imshow("Detect_" +str(i),detect)
    cv2.waitKey(0)

    2.运行结果

    到此这篇关于Python-OpenCV实现图像缺陷检测的实例的文章就介绍到这了,更多相关OpenCV 图像缺陷检测内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    您可能感兴趣的文章:
    • python基于Opencv实现人脸口罩检测
    • opencv实现颜色检测
    • python调用opencv实现猫脸检测功能
    • Python实战之OpenCV实现猫脸检测
    上一篇:Python中OpenCV实现简单车牌字符切割
    下一篇:端午节将至,用Python爬取粽子数据并可视化,看看网友喜欢哪种粽子吧!
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Python-OpenCV实现图像缺陷检测的实例 Python-OpenCV,实现,图像,缺陷,