图像低频高频区域分离 小波变换
图像低频高频区域分离
简介
本篇整理记录利用小波分离图像的高频、低频部分信息。
具体实现
实现代码参考资料:小波变换 C++ opencv 实现。
小波变换
小波生成和参考资料中一致。小波变换中,首先抽取出原图像的每一行,进行小波分解,获得水平方向的高、低频信息。 接着抽取出原图像的每一列,进行小波分解,获得垂直方向的高、低频信息。生成的对应结果如下:
水平方向 垂直方向
区域分离
如上,我们已经获得了水平、垂直方向的高、低频信息,并保存到了图像中。接着我们首先将这两幅图片都叠加到同一副图像中。 结果开运算、高斯滤波和阀值二值化之后,最终获得比较好的分离掩码结果。对应代码如下:
- void picDone(Mat mat1, Mat mat2){
- int i, j;
- IplImage tmp;
- CvScalar s;
- float sum = 0;
- mat2.copyTo(mask);
- tmp = mask;
- for(i=0; i< mat2.rows; i++){
- for(j=0; j< mat2.cols; j++){
- mask.at<float>(i,j) = (mat1.at<float>(i,j) + mat2.at<float>(i,j)) / 2;
- if((i==0) && (j==0)){
- sum = mask.at<float>(i,j);
- }else{
- sum = (sum + mask.at<float>(i,j)) / 2;
- }
- }
- }
- tmp = mat2;
- cvZero(&tmp);
- imshow("mask0", mask);
- morphologyEx(mask, mat2, MORPH_CLOSE, Mat(5,5,CV_8U), Point(-1,-1), 1);
- GaussianBlur(mat2, mask, Size(7,7), 0, 0);
- tmp = mask;
- for(i=0; i< mask.rows; i++){
- for(j=0; j< mask.cols; j++){
- s = cvGet2D(&tmp, i, j);
- if(s.val[0] < sum){
- s.val[0] = 0;
- cvSet2D(&tmp, i, j, s);
- }
- }
- }
- imshow("mask", mask);
- }
对应的结果显示如下:
直接叠加 后处理结果
图像低频高频区域分离 小波变换相关推荐
- 图像低频高频区域分离
简介 本篇整理记录利用小波分离图像的高频.低频部分信息. 具体实现 实现代码参考资料:小波变换 C++ opencv 实现. 小波变换 小波生成和参考资料中一致.小波变换中,首先抽取出原图像的每一行, ...
- 图像低频、高频信息的理解
图像频率 图像频率是指图像中灰度变化剧烈程度的指标. 图像低.高频信息 图像的主要成分是低频信息,它形成了图像基本的灰度等级,对图像结构的决定作用较小:中频信息决定了图像的基本结构,形成了图像的主要边 ...
- Python实现傅里叶变换提取图像高频区域(边缘)
傅里叶变换 最近在项目里需要用到傅里叶变换获取图像的高频区域(边缘),之前在csdn上看到一篇关于使用圆形滤波器的,使用效果并不好,图像提取高频信息后的图像在纯色区域有和明显的振铃效应,之后看到了这篇 ...
- 图像的高频和低频滤波处理
图像的高频和低频 低频对应图像内变化缓慢的灰度分量.列如,在一副大草原上的图像中,低频对应着广袤的颜色趋于一致的草原 高频对应着图像内变化越来越快的灰度分量,是由灰度的尖锐过度造成的,列如,在一副大草 ...
- 对一幅图像进行高频增强
算法思想: 首先将图像转换为double型,扩大图像并进行傅里叶变换及中心化处理,获得频域的图像:根据高斯高通滤波器的定理,通过两层循环将高斯高通滤波器的频域矩阵求出,对频域的图像和滤波器矩阵进行点乘 ...
- 乳腺肿瘤超声图像感兴趣区域的自动识别综述
1. 研究背景与意义 乳腺恶性肿瘤是女性最常见的恶性肿瘤之一,其死亡率已经超过宫颈癌死亡率,位居癌症死亡率的前五名 [d1]. 美国癌症协会的调查报告 [d2] 显示2008年全球新发乳腺癌病例达1 ...
- 【OCR】图像预处理-文字背景分离方法
1. 摘要 在OCR处理文档时,经常会遇到自然拍照场景中由于光照强度不一.拍摄角度不同.相机成像元件差异,因此会导致拍摄的图片与扫描文档存在较大区别.为使文档文字内容更加鲜明,便于后续特征提取,本文目 ...
- Halcon学习之六:获取Image图像中Region区域的特征参数
area_center_gray ( Regions, Image : : : Area, Row, Column ) 计算Image图像中Region区域的面积Area和重心(Row,Colu ...
- R语言ggplot2可视化左对齐两个可视化图像的画图区域(边缘)实战
R语言ggplot2可视化左对齐两个可视化图像的画图区域(边缘)实战 目录 R语言ggplot2可视化左对齐两个可视化图像的画图区域(边缘)实战
最新文章
- Excel弱爆了!这个工具30分钟完成了我一天的工作量,零基础、文科生也能学!...
- linux centos yum错误 You could try using --skip-broken to work around the problem
- cacti监控一览无余
- P13 最优控制系统-《Matlab/Simulink与控制系统仿真》程序指令总结
- 【新星计划】 Python的txt文本操作-读、写
- 模型怎么样_次世代PBR游戏模型流程到底是怎么样?
- Symantec防病毒企业版10.1部署方法一
- 我做SAP CRM One Order redesign的一些心得体会
- 微信小程序wss报错:wx.request:fail ssl hand shake error 解决方法
- Linux基础学习七:mysql的安装和配置教程
- 计算机的用户软件在哪,电脑自带录屏软件在哪?这里教你怎么找
- 第一篇:你不一定了解的推荐系统
- 计算机网络工程综合布线目的,浅谈网络工程综合布线系统
- 移动互联网浩荡十年 有的升腾,有的陨落
- vscode unins000.exe报错
- Linux笔记:开机自动运行程序
- 计算机在高分子材料中的应用软件,计算机技术在高分子材料工程中的应用(10页)-原创力文档...
- 小程序实现城市搜索功能
- Huffman编码解压缩的通俗讲解
- DM8数据库入门学习总结
热门文章
- 查看linux糸统dns是否运行,探查Linux系统DNS服务器运行状况
- java build.gradle 详解_java – Gradle构建失败[无法解析配置的所有依赖项’:compile’.]...
- 查画图linux进程,分享|6 款面向 Linux 用户的开源绘图应用程序
- sap系统搭建教程_Nios ii最小系统搭建教程
- java反射机制关键字驱动_搭建关键字驱动自动化测试框架
- rabbitmq 同步策略_RabbitMQ(三):消息持久化策略
- python输入球的半径_基于用户输入半径的Myro移动机器人
- 微服务架构核心20讲 课程的学习笔记
- 2022年最新限量红包封面,炸裂的不要不要的!速度领取!
- MySQL 8.0 可以操作 JSON 了,牛!