基于Opencv的裂缝检测及测量

最终效果如下:

不仅标出了裂纹位置,还标出了裂纹的尺寸

原图如下:

核心原理就是基于opencv的图片处理及轮廓查找,具体逻辑看代码,话不多说上代码:

# 在一张图片上检测圆
import cv2
import numpy as np


def detect_circle(img):
    """在一张图片上检测圆
    img: 必须是二值化的图
    """
    roi=np.zeros(img.shape[:2], dtype=np.uint8)
    mask = np.ones_like(img) * 255
    # img = img * 255
    img_bgr = np.stack([img,img,img],axis=-1)
    # param2越小,检测到的圆越多
    circles = cv2.HoughCircles(img,cv2.HOUGH_GRADIENT,1,20,
                param1=10,param2=10,minRadius=10,maxRadius=70)
    # print(circles)
    circles = np.uint16(n

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-13 23:38:01       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-13 23:38:01       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-13 23:38:01       57 阅读
  4. Python语言-面向对象

    2024-07-13 23:38:01       68 阅读

热门阅读

  1. 计算机如何学习

    2024-07-13 23:38:01       15 阅读
  2. 要修改已经推送到远程仓库的提交信息

    2024-07-13 23:38:01       17 阅读
  3. linux 设置nginx开机自启

    2024-07-13 23:38:01       21 阅读
  4. c++贪心算法

    2024-07-13 23:38:01       18 阅读
  5. ArcGIS Pro SDK (八)地理数据库 4 查询

    2024-07-13 23:38:01       16 阅读
  6. 文本语言的上升沿写法

    2024-07-13 23:38:01       15 阅读
  7. Aop实现后端数据重复提交

    2024-07-13 23:38:01       23 阅读
  8. Android C++系列:Linux进程间关系

    2024-07-13 23:38:01       20 阅读
  9. thinkphp5多层with关联查询错误问题

    2024-07-13 23:38:01       25 阅读
  10. Understanding EtherCAT Device Serial Number Checking

    2024-07-13 23:38:01       19 阅读
  11. 1.1 Android启动概览

    2024-07-13 23:38:01       22 阅读
  12. HttpUtils工具类

    2024-07-13 23:38:01       18 阅读
  13. 风景区服务热线系统:智能化时代的旅游新选择

    2024-07-13 23:38:01       21 阅读
  14. acnconda虚拟环境管理笔记

    2024-07-13 23:38:01       21 阅读