python-opencv划痕检测

这篇具有很好参考价值的文章主要介绍了python-opencv划痕检测。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

python-opencv划痕检测

这次实验,我们将对如下图片进行划痕检测,其实这个比较有难度,因为清晰度太差了。

我们做法如下:
(1)读取图像为灰度图像,进行自适应直方图均衡化处理,增强图片对比度
(2)然后进行三次图像去噪 - 高斯滤波
(3)然后我们再进行一次直方图均衡操作增强图片
(4)然后使用canny进行边缘检测
(5)最后使用霍夫曼直线检测,检测划痕线段并绘制
python图片划痕检测,python,人工智能,opencv,人工智能,计算机视觉
代码实现如下:

import cv2
import copy
import math
import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np
import os


path=r'sta.bmp'

img=cv2.imread(path)

def cv_show(name,img):
    cv2.imshow(name,img)
    #cv2.waitKey(0),接收0,表示窗口暂停
    cv2.waitKey(0)
    #销毁所有窗口
    cv2.destroyAllWindows()


def histogram_equalization(image):
    gray = image
    equalized = cv2.equalizeHist(gray)
    return equalized

cv_show('img',img)
# 图像去噪 - 高斯滤波
def gaussian_filtering(image):
    blurred = cv2.GaussianBlur(image, (3, 3), 0)
    return blurred


#img=gaussian_filtering(img)

#img = histogram_equalization(img)
img_gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)

kernel=np.ones((3,3),np.uint8)

rows = img_gray.shape[0]  # rows、cols 行列数,rows 也就是高度
cols = img_gray.shape[1]

#for i in range(rows):
#    for j in range(cols):
#        print(img_gray[i][j])
#dilate_img=cv2.dilate(img_gray,kernel=kernel,iterations=1)
#ret,dst1=cv2.threshold(img_gray,135,255,cv2.THRESH_BINARY)

clahe = cv2.createCLAHE(5,(3,3))
dst = clahe.apply(img_gray)
for i in range(3):

    dst=gaussian_filtering(dst)
dst=histogram_equalization(dst)
cv_show('dst',dst)

kernel=np.ones((3,3),np.uint8)




kernel=np.ones((3,3),np.uint8)
kernel=kernel+5









img_gray=dst





# 转换成灰度图
gray = img_gray
# 边缘检测, Sobel算子大小为3
edges = cv2.Canny(gray, 150, 185, apertureSize=3)
orgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)
oShow = orgb.copy()
# 霍夫曼直线检测
lines= cv2.HoughLinesP(edges,1,np.pi/180,10,

                     minLineLength=60,maxLineGap=6
                     )
#遍历
l = lines[:,0,:]
for x1,y1,x2,y2 in l [:]: 
    cv2.line(orgb,(x1,y1),(x2,y2),(0,0,255),1)
#展示
plt.subplot(121)
plt.imshow(gray,'gray')
plt.axis('off')
plt.subplot(122)
plt.imshow(orgb,'gray')
plt.axis('off')

plt.show()

os.system("pause")

python图片划痕检测,python,人工智能,opencv,人工智能,计算机视觉
检测结果如下:
python图片划痕检测,python,人工智能,opencv,人工智能,计算机视觉
有一点效果,但不多。文章来源地址https://www.toymoban.com/news/detail-772945.html

到了这里,关于python-opencv划痕检测的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python-OpenCV中的图像处理-边缘检测

    Canny 边缘检测是一种非常流行的边缘检测算法,是 John F.Canny 在 1986 年提出的。它是一个有很多步构成的算法:噪声去除、计算图像梯度、非极大值抑制、滞后阀值等。 Canny(image: Mat, threshold1, threshold2, edges=…, apertureSize=…, L2gradient=…) 在 OpenCV 中只需要一个函数: cv2.Canny(),

    2024年02月13日
    浏览(56)
  • python-opencv将视频逐帧保存为图片

    本文使用python-opencv将本地视频逐帧保存为图片(.jpg)格式,将保存的图片放在当前目录的一个文件夹内。 环境:python3.7 需要python库:opencv(cv2),os,time 代码如下: 将需要保存图片的视频文件放置在与程序同一目录下 运行结果,当前目录下出现以时间命名的文件夹,里面保存

    2024年02月15日
    浏览(39)
  • Python-opencv实现目标检测定位:判断固定颜色物体是否在规定区域内

    主要实现实时检测视频或者摄像头中出现的固定颜色(本例中使用绿色)是否在规定的区域范围内,并将结果反馈到原视频上。 实现的效果如下图所示: 1、当绿色物体出现在屏幕中的黑框中时,在视频左上角反馈一个“True”的信息。 2、当绿色物体出现在屏幕中但没有完全

    2024年01月17日
    浏览(47)
  • 关于HSV了解这些就够了,python-opencv获取图片精确hsv的值

    有时候想要获得一幅图片里面 某个物体的精确的hsv的值,需要怎么做呢? 在输出的hsv的图像中,用鼠标左键点击,就可以知道那个点的精确的hsv的值     RGB 是我们接触最多的颜色空间,由三个通道表示一幅图像,分别为红色(R),绿色(G)和蓝色(B)。这三种颜色的不同组合可以

    2024年02月05日
    浏览(54)
  • 人工智能——“kmeans实现图片分割”(Python实现)

    (2)边缘分割:对图像边缘进行检测,即检测图像中灰度值发生跳变的地方,则为一片 区域的边缘。 (3)直方图法:对图像的颜色建立直方图,而直方图的波峰波谷能够表示一块区域的颜 色值的范围,来达到分割的目的。 (4)特定理论:基于 聚类分析 、小波变换等理论完成图像

    2024年04月17日
    浏览(38)
  • 解决python-opencv:(-215:Assertion failed) _img.empty() in function ‘cv::imwrite‘在将视频分成帧图片,写入时出现的问题

    最近在搞视频检测问题,在用到将视频分帧保存为图片时,图片可以保存,但是会出现(-215:Assertion failed) !_img.empty() in function \\\'cv::imwrite\\\'问题而不能正常运行,在检查代码、检查路径等措施均无果后,了解了视频分帧的原理后,才解决了问题,就这一个问题,解决了两天才解决

    2024年02月15日
    浏览(48)
  • 毕业设计:基于机器学习的课堂学生表情识别系统 人工智能 python 目标检测

    目录 前言 项目背景 数据集 设计思路 更多帮助     📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科同学来说是充

    2024年04月16日
    浏览(134)
  • 毕业设计:基于机器学习的草莓成熟度识别分类系统 人工智能 python 目标检测

    目录 前言 项目背景 数据集 设计思路 更多帮助     📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科同学来说是充

    2024年04月27日
    浏览(92)
  • 毕业设计-计算机视觉:刨花板表面小目标缺陷检测系统 人工智能 算法 python

      目录  前言 设计思路 一、课题背景与意义 二、算法理论原理 2.1 自适应空间特征融合模块 2.2 Ghost 模块 三、检测的实现 3.1 数据集 3.2 实验环境搭建 3.3 实验及结果分析 实现效果图样例 最后        📅大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临

    2024年01月16日
    浏览(55)
  • 铅华洗尽,粉黛不施,人工智能AI基于ProPainter技术去除图片以及视频水印(Python3.10)

    视频以及图片修复技术是一项具有挑战性的AI视觉任务,它涉及在视频或者图片序列中填补缺失或损坏的区域,同时保持空间和时间的连贯性。该技术在视频补全、对象移除、视频恢复等领域有广泛应用。近年来,两种突出的方案在视频修复中崭露头角:flow-based propagation和

    2024年02月08日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包