imagesc

	<div id="mylinks"><a id="blog_nav_sitehome" class="menu" href="https://www.cnblogs.com/">博客园</a> &nbsp;

首页  
新随笔  
联系  
订阅订阅 
管理

随笔-7  评论-1  文章-0 

【原创】关于MATLAB中imagesc函数图像保存的问题

这几天我在搞用contourlet变换来做图像融合。

期间,遇到了一个问题,就是将得到的多层矩阵用contourlet反变换后,得到的不是一个正规的图片矩阵,就是每个像素点灰度值大小都在0~255之间,这个矩阵像素点的灰度值有的大于了255,有的小于了0。当直接用imshow()函数来显示这个矩阵的时候,在figure窗口中画出来的完全不是一张正常图片,而是白白的一片,底部有些黑色的东西。
我查看了contourlet工具包里的各种文档说明,参考工具包里的demo程序,使用imagesc(I,[0,255])语句可以将这个矩阵显示为一张图片了,但是颜色很诡异,有点像美图秀秀加的效果,而且图像的大小也被压缩。后来查阅资料,发现imagesc()这个函数,本来就是将图片压缩后再显示的。之后添加colormap(gray);axis image;语句可以将图片显示为正常的灰度图像,图像的大小也恢复了本来面目。
那么现在问题来了,怎样将这张图片保存,然后将其用到我的其他测试函数中,来比较图像融合的效果呢?
在网上一直都找到解决方法,不过现在我已经解决这个问题啦!
其实使用imshow(I,[255])就可以将这个矩阵以正常的图片显示,而且不会像imagesc()函数有压缩图片这个副作用。同样还是上面的问题,但是怎样将figure窗口里的图片保存呢?
我参看了一下imshow()的实际函数过程,其实就是将灰度值大于255或小于0的像素直接分别修改成了255和0.那么我自己写了一个函数,对最初的矩阵进行了处理,通过遍历矩阵中的每一个像素点,将这个矩阵中灰度值大于255或小于0的像素的值直接分别修改成了255和0,得到一个新的矩阵,就是我想要的图像。
但是我之后直接用imshow(I)函数显示这个矩阵,又是一片大白。
其实还有把这个矩阵用uint8(I)变换一下,最后得到的矩阵,再用imshow(I)直接显示,就一切正常啦!
然后再用imwrite()语句保存一下这个矩阵,就得到可以用于下一步操作的图片啦!
脱水版:
step1:用imagesc(img,[l,h])显示一张图片,想保存。
step2:写一个遍历矩阵中所有像素的函数,将灰度值小于l的修改为0,将灰度值大于h的修改为255。得到矩阵img
step3:imgfinal = unit8(img).
step4:imwrite(imafinal,'final.jpg','jpg')

 

0
0
» 下一篇: 【原创】MATLAB中contourlet工具包出现异常的解决方法
<div class="postDesc">posted on <span id="post-date">2015-04-29 09:39</span> <a href="https://www.cnblogs.com/wangzirui/">麦穗在唱歌</a> 阅读(<span id="post_view_count">2197</span>) 评论(<span id="post_comment_count">1</span>)  <a href="https://i.cnblogs.com/EditPosts.aspx?postid=4465017" rel="nofollow">编辑</a> <a href="#" onclick="AddToWz(4465017);return false;">收藏</a></div>

评论:
	<div class="feedbackItem">
		<div class="feedbackListSubtitle">
		<a href="#3413982" class="layer">#1楼</a><a name="3413982" id="comment_anchor_3413982"></a><span id="comment-maxId" style="display:none;">3413982</span><span id="comment-maxDate" style="display:none;">2016/4/21 11:23:01</span>
			 <span class="comment_date">2016-04-21 11:23</span> | <a id="a_comment_author_3413982" href="http://home.cnblogs.com/u/936817/" target="_blank">yoyosham</a> <a href="http://msg.cnblogs.com/send/yoyosham" title="发送站内短消息" class="sendMsg2This">&nbsp;</a><br>
			<div align="left"><div id="comment_body_3413982" class="blog_comment_body">谢谢,很好的解决了我的问题。</div><div class="comment_vote"><a href="javascript:void(0);" class="comment_digg" onclick="return voteComment(3413982,'Digg',this)">支持(0)</a><a href="javascript:void(0);" class="comment_bury" onclick="return voteComment(3413982,'Bury',this)">反对(0)</a></div>&nbsp;&nbsp;<span class="comment_actions"></span></div>
		</div>
		
		
	</div>
	<div id="leftcontentcontainer">
昵称: 麦穗在唱歌
园龄: 3年6个月
粉丝: 0
关注: 0
+加关注
		<div id="blog-calendar" style=""><table id="blogCalendar" class="Cal" cellspacing="0" cellpadding="0" title="Calendar">
<tbody><tr><td colspan="7"><table class="CalTitle" cellspacing="0">
	<tbody><tr><td class="CalNextPrev"><a href="javascript:void(0);" onclick="loadBlogCalendar('2018/10/01');return false;">&lt;</a></td><td align="center">2018年11月</td><td class="CalNextPrev" align="right"><a href="javascript:void(0);" onclick="loadBlogCalendar('2018/12/01');return false;">&gt;</a></td></tr>
</tbody></table></td></tr><tr><th class="CalDayHeader" align="center" abbr="日" scope="col">日</th><th class="CalDayHeader" align="center" abbr="一" scope="col">一</th><th class="CalDayHeader" align="center" abbr="二" scope="col">二</th><th class="CalDayHeader" align="center" abbr="三" scope="col">三</th><th class="CalDayHeader" align="center" abbr="四" scope="col">四</th><th class="CalDayHeader" align="center" abbr="五" scope="col">五</th><th class="CalDayHeader" align="center" abbr="六" scope="col">六</th></tr><tr><td class="CalOtherMonthDay" align="center">28</td><td class="CalOtherMonthDay" align="center">29</td><td class="CalOtherMonthDay" align="center">30</td><td class="CalOtherMonthDay" align="center">31</td><td align="center">1</td><td align="center">2</td><td class="CalWeekendDay" align="center">3</td></tr><tr><td class="CalWeekendDay" align="center">4</td><td align="center">5</td><td align="center">6</td><td align="center">7</td><td align="center">8</td><td align="center">9</td><td class="CalTodayDay" align="center">10</td></tr><tr><td class="CalWeekendDay" align="center">11</td><td align="center">12</td><td align="center">13</td><td align="center">14</td><td align="center">15</td><td align="center">16</td><td class="CalWeekendDay" align="center">17</td></tr><tr><td class="CalWeekendDay" align="center">18</td><td align="center">19</td><td align="center">20</td><td align="center">21</td><td align="center">22</td><td align="center">23</td><td class="CalWeekendDay" align="center">24</td></tr><tr><td class="CalWeekendDay" align="center">25</td><td align="center">26</td><td align="center">27</td><td align="center">28</td><td align="center">29</td><td align="center">30</td><td class="CalOtherMonthDay" align="center">1</td></tr><tr><td class="CalOtherMonthDay" align="center">2</td><td class="CalOtherMonthDay" align="center">3</td><td class="CalOtherMonthDay" align="center">4</td><td class="CalOtherMonthDay" align="center">5</td><td class="CalOtherMonthDay" align="center">6</td><td class="CalOtherMonthDay" align="center">7</td><td class="CalOtherMonthDay" align="center">8</td></tr>

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值