python实现ROA算子边缘检测算法


Posted in Python onApril 05, 2021

python实现ROA算子边缘检测算法的具体代码,供大家参考,具体内容如下

代码

import numpy as np
import cv2 as cv


def ROA(image_path, save_path, threshold):
 img = cv.imread(image_path)
 image = cv.cvtColor(img, cv.COLOR_RGB2GRAY)
 new = np.zeros((512, 512), dtype=np.float64) # 开辟存储空间
 width = img.shape[0]
 heigh = img.shape[1]
 for i in range(width):
 for j in range(heigh):
  if i == 0 or j == 0 or i == width - 1 or j == heigh - 1:
  new[i, j] = image[i, j]
  continue
  print(image[i, j])
  if image[i, j] < 60:
  continue
  num_sum = 0.0
  u1 = (image[i - 1, j - 1] + image[i, j - 1] + image[i + 1, j - 1]) / 3
  u2 = (image[i - 1, j + 1] + image[i, j + 1] + image[i + 1, j + 1]) / 3
  r12 = 1.0
  if float(u2) - 0.0 > 1e6:
  r12 = float(u1) / float(u2)
  if float(u1) - 0.0 > 1e6:
  r12 = float(u2) / float(u1)
  num_sum += r12

  u1 = (image[i - 1, j - 1] + image[i, j - 1] + image[i - 1, j]) / 3
  u2 = (image[i + 1, j] + image[i + 1, j + 1] + image[i, j + 1]) / 3
  r12 = 1.0
  if float(u2) - 0.0 > 1e6:
  r12 = float(u1) / float(u2)
  if float(u1) - 0.0 > 1e6:
  r12 = float(u2) / float(u1)
  num_sum += r12

  u1 = (image[i - 1, j - 1] + image[i - 1, j] + image[i - 1, j + 1]) / 3
  u2 = (image[i + 1, j - 1] + image[i + 1, j] + image[i + 1, j + 1]) / 3
  r12 = 1.0
  if float(u2) - 0.0 > 1e6:
  r12 = float(u1) / float(u2)
  if float(u1) - 0.0 > 1e6:
  r12 = float(u2) / float(u1)
  num_sum += r12

  u1 = (image[i - 1, j] + image[i - 1, j + 1] + image[i, j + 1]) / 3
  u2 = (image[i, j - 1] + image[i + 1, j - 1] + image[i + 1, j]) / 3
  r12 = 1.0
  if float(u2) - 0.0 > 1e6:
  r12 = float(u1) / float(u2)
  if float(u1) - 0.0 > 1e6:
  r12 = float(u2) / float(u1)
  num_sum += r12
  new[i, j] = num_sum / 4.0
  if new[i, j] > threshold:
  new[i, j] = 100
  print(new[i, j])

 print(new)

 cv.imwrite(save_path, new)


if __name__ == "__main__":
 image_path = r""
 save_path = r""
 threshold = 
 ROA(image_path, save_path, threshold)

运算结果

运算前

python实现ROA算子边缘检测算法

运算后

python实现ROA算子边缘检测算法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
让python json encode datetime类型
Dec 28 Python
Python Tkinter简单布局实例教程
Sep 03 Python
简介Django框架中可使用的各类缓存
Jul 23 Python
详解python实现识别手写MNIST数字集的程序
Aug 03 Python
Django框架之登录后自定义跳转页面的实现方法
Jul 18 Python
python tkinter基本属性详解
Sep 16 Python
pygame实现烟雨蒙蒙下彩虹雨
Nov 11 Python
Python json转字典字符方法实例解析
Apr 13 Python
PyQt5 文本输入框自动补全QLineEdit的实现示例
May 13 Python
jupyter使用自动补全和切换默认浏览器的方法
Nov 18 Python
Python爬虫之爬取最新更新的小说网站
May 06 Python
python 网络编程要点总结
Jun 18 Python
python实现批量移动文件
Python list去重且保持原顺序不变的方法
Apr 03 #Python
python自动统计zabbix系统监控覆盖率的示例代码
Apr 03 #Python
2021年pycharm的最新安装教程及基本使用图文详解
PyCharm配置KBEngine快速处理代码提示冲突、配置命令问题
python 统计代码耗时的几种方法分享
python 遍历磁盘目录的三种方法
Apr 02 #Python
You might like
php递归列出所有文件和目录的代码
2008/09/10 PHP
初步介绍PHP扩展开发经验分享
2012/09/06 PHP
zf框架的session会话周期及次数限制使用示例
2014/03/13 PHP
php中ob_get_length缓冲与获取缓冲长度实例
2014/11/20 PHP
php通过asort()给关联数组按照值排序的方法
2015/03/18 PHP
PHP获取指定月份第一天和最后一天的方法
2015/07/18 PHP
PHP合并discuz用户脚本的方法
2015/08/04 PHP
phpinfo() 中 Local Value(局部变量)Master Value(主变量) 的区别
2016/02/03 PHP
PHP封装的完整分页类示例
2018/08/21 PHP
身份证号码前六位所代表的省,市,区, 以及地区编码下载
2007/04/12 Javascript
js图片自动切换效果处理代码
2013/05/07 Javascript
javascript写的异步加载js文件函数(支持数组传参)
2014/06/07 Javascript
jquery调取json数据实现省市级联的方法
2015/01/29 Javascript
javascript实现下班倒计时效果的方法(可桌面通知)
2015/07/10 Javascript
ajax在兼容模式下失效的快速解决方法
2016/03/22 Javascript
js解决movebox移动问题
2016/03/29 Javascript
扩展bootstrap的modal模态框-动态添加modal框-弹出多个modal框
2017/02/21 Javascript
将input框中输入内容显示在相应的div中【三种方法可选】
2017/05/08 Javascript
关于js陀螺仪的理解分析
2019/04/11 Javascript
vue 返回上一页,页面样式错乱的解决
2019/11/14 Javascript
JS localStorage存储对象,sessionStorage存储数组对象操作示例
2020/02/15 Javascript
vue基础知识--axios合并请求和slot
2020/06/04 Javascript
[01:54]胎教DOTA2 准妈妈玩家现身中国区预选赛
2016/06/26 DOTA
[01:06:59]完美世界DOTA2联赛PWL S2 Magma vs FTD 第一场 11.29
2020/12/02 DOTA
python3简单实现微信爬虫
2015/04/09 Python
Python实现的插入排序算法原理与用法实例分析
2017/11/22 Python
python实现对excel进行数据剔除操作实例
2017/12/07 Python
Django中如何防范CSRF跨站点请求伪造攻击的实现
2019/04/28 Python
Python实现线性插值和三次样条插值的示例代码
2019/11/13 Python
python使用配置文件过程详解
2019/12/28 Python
德国的各种媒体在线商店:Thalia.de(书籍、电子书、玩具等)
2020/10/08 全球购物
初三家长会邀请函
2014/01/18 职场文书
2014年乡镇植树节活动方案
2014/02/28 职场文书
优质服务演讲稿
2014/05/14 职场文书
教师远程培训心得体会
2016/01/09 职场文书
基于Python实现将列表数据生成折线图
2022/03/23 Python