指静脉代码学习---2:边缘检测

这篇博客介绍了指静脉识别中边缘检测的重要性和方法,包括基于超像素的手指边界检测,涉及步骤如超像素分割、错误边界处理和手指倾斜校正。文章引用了相关论文并提供了C++和Python的参考资料及代码示例。
摘要由CSDN通过智能技术生成

一、论文背景

1.论文①

2.论文②

边缘定位(手指和背景图像分离),利用手指和背景图像有明显的边缘,边缘处的灰度分布存在突变的特性。

3.论文④

        提出“基于超像素的手指边界检测”

        step1 :基于超像素分割的手指边界追踪(目前常用的有①基于sobel检测子的方法②基于模板的方法③基于灰度阈值的方法) 

                超像素的定义与作用(手指边界追踪分为4步进行)

        后处理(错误边界)

         step2:手指倾斜校正及roi定位

                (以及该作者提出的“基于滑动窗口的感兴趣区域提取”)

二、参考资料

1、C++版本讲解14---OpenCV:图像检测之边缘检测__Brooke_的博客-CSDN博客_opencv边缘识别https://blog.csdn.net/zjjaibc/article/details/126673251

2.python版本的两个详细解析(五)OpenCV-Python学习—边缘检测1 - silence_cho - 博客园 (cnblogs.com)https://www.cnblogs.com/silence-cho/p/11070766.html

(六)OpenCV-Python学习—边缘检测2 - silence_cho - 博客园 (cnblogs.com)https://www.cnblogs.com/silence-cho/p/13621975.html

 三、相关论文代码

1.代码①

#边缘检测
def edge_detection(img):
    #img = cv2.imread(file, 0)
    #img = cv2.imread("01.jpg", 0)
    x = cv2.Sobel(img,cv2.CV_16S,1,0)
    y = cv2.Sobel(img,cv2.CV_16S,0,1)
    absX = cv2.convertScaleAbs(x)# 转回uint8
    absY = cv2.convertScaleAbs(y)
    img_edge = cv2.addWeighted(absX,0.5,absY,0.5,0)
    '''
    #cv2.imshow("absX", absX)
    #cv2.imshow("absY", absY)
    #cv2.imshow("Result", img_edge)
    #cv2.waitKey(0)
    #cv2.destroyAllWindows()
    fig = plt.figure(figsize = (30, 30))
    ax1 = fig.add_subplot(1, 2, 1)
    ax2 = fig.add_subplot(1, 2, 2)
    #ax3 = fig.add_subplot(1, 3, 3)
    ax1.imshow(img, cmap = plt.cm.gray)
    ax2.imshow(img_edge, cmap = plt.cm.gray)
    plt.show()
    '''
    return img, img_edge

 2.代码②

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_Ocean__

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值