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中的字典遍历备忘
Jan 17 Python
python生成随机密码或随机字符串的方法
Jul 03 Python
运用TensorFlow进行简单实现线性回归、梯度下降示例
Mar 05 Python
python如何派生内置不可变类型并修改实例化行为
Mar 21 Python
Pycharm设置去除显示的波浪线方法
Oct 28 Python
简单了解python高阶函数map/reduce
Jun 28 Python
使用django的objects.filter()方法匹配多个关键字的方法
Jul 18 Python
Python 分发包中添加额外文件的方法
Aug 16 Python
给大家整理了19个pythonic的编程习惯(小结)
Sep 25 Python
Python打包模块wheel的使用方法与将python包发布到PyPI的方法详解
Feb 12 Python
Python验证码截取识别代码实例
May 16 Python
Python实现数据的序列化操作详解
Jul 07 Python
python实现批量移动文件
Python list去重且保持原顺序不变的方法
Apr 03 #Python
python自动统计zabbix系统监控覆盖率的示例代码
Apr 03 #Python
2021年pycharm的最新安装教程及基本使用图文详解
PyCharm配置KBEngine快速处理代码提示冲突、配置命令问题
python 统计代码耗时的几种方法分享
python 遍历磁盘目录的三种方法
Apr 02 #Python
You might like
使用adodb lite解决问题
2006/12/31 PHP
需要发散思维学习PHP
2009/06/29 PHP
PHP递归返回值时出现的问题解决办法
2013/02/19 PHP
ThinkPHP自动填充实现无限级分类的方法
2014/08/22 PHP
Laravel框架自定义公共函数的引入操作示例
2019/04/16 PHP
php加速缓存器opcache,apc,xcache,eAccelerator原理与配置方法实例分析
2020/03/02 PHP
javascript学习笔记(四) Number 数字类型
2012/06/19 Javascript
jQuery Trim去除字符串首尾空字符的实现方法说明
2014/02/11 Javascript
jquery的ajax简单结构示例代码
2014/02/17 Javascript
angularjs表格分页功能详解
2016/01/21 Javascript
原生js实现class的添加和删除简单代码
2016/07/12 Javascript
最常见和最有用的字符串相关的方法详解
2017/02/06 Javascript
在vue项目中集成graphql(vue-ApolloClient)
2018/09/08 Javascript
Webstorm2016使用技巧(SVN插件使用)
2018/10/29 Javascript
JS实现图片切换效果
2018/11/17 Javascript
JavaScript&quot;模拟事件&quot;的注意要点详解
2019/02/13 Javascript
详解js中let与var声明变量的区别
2020/04/05 Javascript
JavaScript React如何修改默认端口号方法详解
2020/07/28 Javascript
[01:15:36]加油刀塔第二期网络版
2014/08/09 DOTA
用python找出那些被“标记”的照片
2017/04/20 Python
pandas把dataframe转成Series,改变列中值的类型方法
2018/04/10 Python
Python使用 Beanstalkd 做异步任务处理的方法
2018/04/24 Python
Python minidom模块用法示例【DOM写入和解析XML】
2019/03/25 Python
Python单元和文档测试实例详解
2019/04/11 Python
利用Python脚本批量生成SQL语句
2020/03/04 Python
Python 如何实现访问者模式
2020/07/28 Python
HTML5 语音搜索只需一句代码
2013/01/03 HTML / CSS
使用layui实现左侧菜单栏及动态操作tab项的方法
2020/11/10 HTML / CSS
英国领先的大码时装品牌之一:Elvi
2018/08/26 全球购物
俄罗斯购买剧院和演唱会门票网站:Parter.ru
2019/11/09 全球购物
即兴演讲稿
2014/01/04 职场文书
激情洋溢的毕业生就业求职信
2014/03/15 职场文书
新法人代表任命书
2014/06/06 职场文书
病人家属写给医院的感谢信
2015/01/23 职场文书
《废话连篇——致新手》——chinapizza
2022/04/05 无线电
python使用shell脚本创建kafka连接器
2022/04/29 Python