Halcon 图像预处理②

非线性图像分段变化:

先窗体打开图片

对数非线性变化:

结果图像的亮度/对比度显著增加

log_image(Image,LogImag1,'e')

参数1:输入图像

参数2: 输出图像

参数3:底数

log_image(Image,LogImage2,0.1)

图像结果亮度和对比度比较平缓

指数非线性变化:

pow_image (Image, PowImage, 0.1)

参数3:指数,0-1 增强高灰度值对比度,大于等于1增强低灰度值的对比度

直方图:

打开窗体展示text文本'直方图'

特征:1. 没有位置信息2. 与图像之间为一对多的映射关系,任意一幅图像都有唯一确定的一个直方图与之对应,但不同的图像可能有相同的直方图3. 可叠加性,各个子区域之和等于该图像全图的直方图

获取图像的灰度值直方图:

gray_histo(Image, Image, AbsoluteHisto, RelativeHisto)

参数1 计算的区域

参数2 输入的图像

参数3 AbsoluteHisto绝对分布

参数4 RelativeHisto 相对分布

将灰度直方图绘制出来:

gen_region_histo(Region,AbsoluteHisto,255,255,1)

参数1:绘制之后的区域输出的

参数2:对相对分布绘制直方图

参数3,4:xy的坐标

参数5:高度的缩放比例

将灰度直方图绘制出来

gen_region_histo(Region,AbsoluteHisto,255,255,1)

圆直图均衡化:

将密集的灰度值进行拉开

有蒙层的图片,把蒙层去掉

直方图均衡化

equ_histo_image (Image, ImageEquHisto)

均值滤波:

均值滤波的主要目的是消除高斯噪声:

均值滤波的原理就是将像素灰度值与其邻域内的像素灰度值相加取平均值,该滤波器区域就如同一个小的“窗口”,在图像上从左上角开始滑动,将该“窗口”内的像素灰度值相加并取平均值,然后将该灰度值赋值给“窗口”中的中心像素。

均值滤波优点:对图像内部的噪声及模糊图像有很好的作用

均值滤波缺点:使用均值滤波计算均值会将图像中的边缘信息与特征信息“模糊”掉,丢失很多特征。

创建一个高斯噪声点 值越大 噪声越明显

gauss_distribution (100, Distribution)

将噪声添加到指定图像上,并且生成一个噪声图

add_noise_distribution (Image, ImageNoise, Distribution)
dev_display (ImageNoise)

mean 平均值 使用均值滤波进行消除噪声(9*9 就是滤波核)

mean_image (ImageNoise, ImageMean,3, 3)

中值滤波:

简介:主要目的是消除椒盐噪声:中值滤波的原理与均值滤波相似,不同的是,它以像素为中心,取一个指定形状的邻域作为滤波器,该形状可以是正方形,也可以是圆形,然后将该区域内的像素灰度值进行排序,以排序结果的中间值作为灰度计算结果赋值给该区域内的像素。

优点:对单个噪声有很好的平滑作用,尤其是椒盐噪声。

创建椒盐声

sp_distribution (5, 5, Distribution)

 参数1 白色的噪声的比例

参数2 椒盐声的比例

添加椒盐噪声

add_noise_distribution (Image, ImageNoise, Distribution)

消除椒盐噪声

median_image (ImageNoise, ImageMedian, 'circle', 3, 'mirrored')

参数1 噪声图片

参数2 消除的噪声的图片

参数3 滤波器的采用形状 优先采用circle

参数4 滤波器尺寸 建设值设置为3

参数5 边界的处理方式

原理:

        将图像视为循环延拓的(即假设图像上下左右首尾相连)。超出边界的像素值从对侧获取。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/news/907086.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

云原生安全之网络IP协议:从基础到实践指南

🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 IP协议(Internet Protocol)是互联网通信的核心协议族之一,负责在设备间传递数据包。其核心特性包括&…

QML学习08Text

Text 1、颜色(color)2、获取宽度和高度(contentWidth、contentHeight)3、字体格式(font)4、文本样式(textFormat)5、超链接 1、颜色(color) //颜色Text {colo…

Python网络编程深度解析

目录 一、网络编程概述 二、TCP与UDP协议详解 1.TCP协议:可靠传输的基石 2.UDP协议:高效但不可靠的传输 3. TCP与UDP对比 三、Socket编程模型 1. Socket基础 2.TCP服务器实现详解 3. UDP服务器实现详解 四、进阶应用:简易聊天程序 …

ElasticSearch导读

ElasticSearch 简介:ElasticSearch简称ES是一个开源的分布式搜素和数据分析引擎。是使用Java开发并且是当前最流行的开源的企业级搜索引擎,能够达到近实时搜索,它专门设计用于处理大规模的文本数据和实现高性能的全文搜索。它基于 Apache Luc…

【后端高阶面经:数据库篇】18、分布式事务:如何在分库分表中实现高性能与一致性?

一、分布式事务核心挑战:分库分表下的一致性困境 在分布式系统架构中,分库分表通过将数据分散存储提升了扩展性和性能,但却打破了传统单库事务的边界,使得分布式事务成为保障数据一致性的核心难题。其挑战主要体现在以下三方面: 1.1 ACID特性的分布式撕裂 原子性(Atomi…

Tailwind css实战,基于Kooboo构建AI对话框页面(一)

在当今数字化时代,AI 助手已成为网站和应用不可或缺的一部分。本文将带你一步步使用 Tailwind CSS 和 Kooboo 构建一个现代化的 AI 对话界面框。 一、选择 Kooboo平台 的核心优势 智能提示:在输入 class 属性时,会自动触发 Tailwind CSS 规则…

python学习day2:进制+码制+逻辑运算符

进制 Python 中的进制表示与转换 进制的基本概念 二进制、八进制、十进制、十六进制的定义与特点不同进制在计算机科学中的应用场景 Python 中的进制表示 二进制表示:使用 0b 前缀八进制表示:使用 0o 前缀十六进制表示:使用 0x 前缀示例…

ROS2学习(11)------ROS2通信接口

操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 ROS版本:2 ROS 2 提供了多种通信接口,用于节点之间的数据交换。这些接口主要包括话题(Topics)、服务(Services)、动作&…

STM32G0xx基于串口(UART)Ymodem协议实现OTA升级包括Bootloader、上位机、应用程序

STM32G0xx基于串口Ymodem协议实现OTA升级包括Bootloader、上位机、应用程序 例程说明一、串口相关的底层配置二、OTA相关的应用层三、Flash相关的操作四、Flash存储参数相关五、核心部分Ymodem相关六、其他宏配置七、主函数八、使用Python合并文件九、测试结果有疑问欢迎加交流…

Jenkins实践(6):配置“构建历史的显示名称,加上包名等信息“

Jenkins实践(6):配置“构建历史的显示名称,加上包名等信息“ 版本:Jenkins 4.262.2 需求:想要在构建历史中展示,本次运行的是哪个版本或哪个包 操作步骤: 1、先安装插件Build Name and Description Setter 2、Set Build Name 3、构建历史处查看展示 插件特性说明 安装依赖…

快速解决azure aks aad身份和权限问题

现状分析 AKS cluster 1.31.8启用aad 身份验证和kubernetes RBAC 当尝试执行kubectl get node命令时,系统返回以下错误信息: Error from server (Forbidden): nodes is forbidden: User "357517e8-4df5-4daa-88b4-94a84d763ec5" cannot list…

【玩转腾讯混元大模型】腾讯混元大模型AIGC系列产品深度体验

【玩转腾讯混元大模型】腾讯混元大模型AIGC系列产品深度体验 腾讯推出的系列AI产品:混元大模型、大模型图像创作引擎、大模型视频创作引擎、腾讯元宝,共同构成了一个强大的AI生态系统;凭借腾讯自研的大规模预训练技术和先进的自然语言处理、计…

(自用)Java学习-5.13(Redis,OSS)

核心功能实现 1. 类别导航动态加载 前端实现&#xff1a; // 加载一级分类 $.ajax({url: /category/showFirstMenu?pid0,success: function(resp) {resp.forEach(item > {$(".index-menu").append(<li onmouseover"showSecondMenu(${item.id})">…

2025电工杯A题电工杯数学建模思路代码文章教学:光伏电站发电功率日前预测问题

完整内容请看文章最下面的推广群 已更新数据、思路和模型 问题1&#xff1a;基于历史功率的光伏电站发电特性分析 建模与求解思路&#xff1a; 首先&#xff0c;需要收集光伏电站的历史发电功率数据、地理位置信息&#xff08;经纬度、海拔、倾角等&#xff09;以及太阳辐照…

Visual Studio 调试中 PDB 与图像不匹配

Visual Studio 调试中 PDB 与图像不匹配 在使用 Visual Studio 进行本地或远程调试时&#xff0c;很多开发者会遇到 PDB 加载失败、符号不匹配的问题&#xff0c;甚至程序进程未退出&#xff0c;导致 .exe 文件无法成功覆盖。本文详细解析了从后台进程清理、构建产物验证、模块…

WebRTC:实时通信的未来之路

WebRTC&#xff1a;实时通信的未来之路 目录 WebRTC&#xff1a;实时通信的未来之路一、背景介绍二、使用方式三、前途展望 一、背景介绍 随着互联网的飞速发展&#xff0c;实时音视频通信需求日益增长。传统的音视频通信多依赖于专有协议和插件&#xff08;如Flash、ActiveX等…

华为OD机试真题——猴子吃桃/爱吃蟠桃的孙悟空(2025B卷:200分)Java/python/JavaScript/C++/C语言/GO六种最佳实现

2025 B卷 200分 题型 本文涵盖详细的问题分析、解题思路、代码实现、代码详解、测试用例以及综合分析; 并提供Java、python、JavaScript、C++、C语言、GO六种语言的最佳实现方式! 本文收录于专栏:《2025华为OD真题目录+全流程解析/备考攻略/经验分享》 华为OD机试真题《猴子…

【Java学习笔记】单例设计模式

单例设计模式 单例模式介绍 1. 所谓类的单例设计模式&#xff0c;就是采取一定的方法保证在整个的软件系统中 &#xff08;1&#xff09;对某个类只能存在一个对象实例 &#xff08;2&#xff09;并且该类只提供一个取得对象实例的方法 2. 分类&#xff08;两种方式&#xf…

vue实例 与组件实例

vue实例 与组件实例流程图 &#x1f9e9; 基本解释 ✅ Vue 实例 Vue 实例是通过 new Vue({…}) 创建的对象&#xff0c;是整个应用的根节点。 const vm new Vue({el: #app,data: { msg: Hello Vue } });是整个应用的起点。只有一个根 Vue 实例&#xff08;通常&#xff09;…

Hive 分桶(Bucketing)深度解析:原理、实战与核心概念对比

一、分桶的意义&#xff1a;比分区更细的粒度管理 1.1 解决分区数据不均匀问题 分区的局限性&#xff1a;分区基于表外字段&#xff08;如时间字段&#xff09;划分数据&#xff0c;但可能导致部分分区数据量过大&#xff0c;部分过小&#xff0c;无法进一步细化。 分桶的定…