matlab impyramid,图像 – Matlab impyramid问题
如果您实际打开了impyramid并查看了源代码,那么归结为一个imresize调用.具体来说,当A被定义为图像时,在调用impyramid时使用expand时会发生这种情况:
M = size(A,1);
N = size(A,2);
scaleFactor = 2;
outputSize = 2*[M N] - 1;
kernel = makePiecewiseConstantFunction( ...
[1.25 0.75 0.25 -0.25 -0.75 -1.25 -Inf], ...
[0.0 0.125 0.5 0.75 0.5 0.125 0.0]);
kernelWidth = 3;
B = imresize(A, scaleFactor, {kernel, kernelWidth}, ...
'OutputSize', outputSize, 'Antialiasing', false);
如您所见,outputSize被定义为图像维度减去1的两倍,这就是每个维度偏离1个像素的原因.函数makePiecewiseConstantFunction是一个在impyramid中定义的局部函数.我会让你打开它,亲眼看看.在调用上面的代码之前,请确保已定义.
因此,只需删除1的减法即可实现您想要的效果.
因此,请调用上面的代码,但将outputSize更改为:
outputSize = 2*[M N];
但是,如果您想要冒险,可以自己修改此源代码以获取一个标志,如果将其设置为true,则不会减1,false执行减法.因此,您可以修改impyramid的标头来执行此操作:
function B = impyramid(A, direction, padding)
然后,在完成任何计算之前的开始,您可以这样做:
if nargin == 2
padding = false;
end
这允许您在没有第三个参数的情况下调用impyramid,默认情况下不会填充.
完成后,在if语句的expand部分中,您可以执行以下操作:
else
scaleFactor = 2;
outputSize = 2*[M N];
if ~padding %// Change
outputSize = outputSize - 1;
end
kernel = makePiecewiseConstantFunction( ...
[1.25 0.75 0.25 -0.25 -0.75 -1.25 -Inf], ...
[0.0 0.125 0.5 0.75 0.5 0.125 0.0]);
kernelWidth = 3;
end
然后,嵌套的if语句检查您是否要允许输出图像的大小为2M x 2N或2M – 1 x 2N – 1.因此,当您完成修改代码后,您可以执行以下操作:
scaled_result1_2 = impyramid(scale1_2, 'expand', true);
scaled_result1_4 = impyramid(impyramid(scale1_4,'expand', true), 'expand', true);
matlab impyramid,图像 – Matlab impyramid问题相关推荐
- matlab rectangle图像,Matlab中对图像应用plot或者rectangle后的图像保存问题
有时候,我们处理好图像后,为了标识出图像的目标区域来,需要利用plot函数或者rectangle函数,这样标识目标后,就保存图像.一般的保存图像可以利用figure中的edit菜单中的copy fig ...
- matlab 刷新图像,MATLAB三维画图、画线、动态刷新、不同视角、自动保存多张图像...
作者:金良(golden1314521@gmail.com) csdn博客:http://blog.csdn.net/u012176591 效果图(http://www.tuyitu.com/gif/ ...
- OpenCV中图像Mat存储格式和MATLAB中图像Mat存储格式的区别
首先,看一下图像中的宽高与笛卡尔坐标系之间的关系如下图所示,即x与width(cols)对应,y与height(rows)对应,x是按列来进行变化,y按行变化. OpenCV读入图像以Mat形式存储时 ...
- matlab对图像进行增强,利用matlab对图像进行增强处理.doc
利用matlab对图像进行增强处理.doc 郑州轻工业学院课程设计任务书题目利用MATLAB对图像进行增强处理专业.班级电子信息工程07级学号姓名主要内容.基本要求.主要参考资料等:主要内容:在图像形 ...
- matlab中的图像,MATLAB中图像的基本操作
MATLAB中图像的基本操作 1.读取.显示图片 MATLAB中提供了immread()与imshow()函数读取和显示图片.其中读取函数imread()原型: imread: A= imread(f ...
- matlab中图像读写
一. 读写图像文件 1. imread imread函数用于读入各种图像文件,如:a=imread('e:/w01.tif') 注:计算机E盘上要有w01相应的.tif文件. 2. imwrite i ...
- Matlab | MATLAB实现图像的水印去除
博主github:https://github.com/MichaelBeechan 博主CSDN:https://blog.csdn.net/shuiu1344545 萌萌的预处理图像 Matlab ...
- OpenCV | 双目相机标定之OpenCV获取左右相机图像+MATLAB单目标定+双目标定
博主github:https://github.com/MichaelBeechan 博主CSDN:https://blog.csdn.net/u011344545 原本网上可以搜到很多关于双目相机标 ...
- matlab 读取照片imread,利用matlab读取图像
怎样用matlab读取20张图片并依次展示出来 指定路径下 单个文件夹data中所有图像 P = '.\data\';% 图像文件夹路径 img_path_list = dir(strcat(P,'* ...
最新文章
- 活久见!技术面试官竟然给我出了一个脑筋急转弯,还问我王者荣耀什么段位?...
- 表单标签form、label、input、textarea、select
- 2017-03-02学习心得之Java代码
- 黑马vue---10-11、Vue实现跑马灯效果
- 使用委托(事件)或中介设计模式实现多个Windows窗体文本框的同步
- 如果发现CSDN资源有问题,可以进行举报
- 190811每日一句
- Python实现学生信息管理系统
- UML建模与软件工程
- 机器学习实战+源代码
- 基于java的网上鲜花销售系统
- ElasticJob‐Lite:扩展作业类型
- 第一次跳槽总结(产品经理,简历面试)
- vscode 编写代码为白色 --解决办法
- RdViewer(远程控制电脑屏幕软件)官方中文版V3.3.1 | rd远程工具下载
- XSS攻击的一个校内简单实例
- 简单实用的出入库管理系统,帮你实现库存精细化管理!
- linux下解压文件的几种小操作
- 马蜂窝 iOS App 启动治理:回归用户体验
- 基于Android开发的仿网易云播放器
热门文章
- [css] 在固定宽度的div下,怎么让字体自适应大小,不超出宽度,也不要换行
- [js] 如何按回车自动提交表单
- 前端学习(2374):技术栈的使用
- 前端学习(2148):webpack-less图片文件的转化
- 前端学习(1749):前端调试值之如何查看js和css源码
- 前端学习(1603):脚手架组件使用
- FPGA+NIOS2 Verilog+C 实现一个计算器
- 树莓派移植SX1278 LoRa通信--使用wiringPi 移植GPIO中断
- java 分页 不 排序_java - 我应该如何将未分页但已排序的Pageable传递给Spring JPA存储库? - 堆栈内存溢出...
- Saltstack_使用指南17_salt-ssh