[问题]请问Subsample要怎么取点?

楼主: boys5566 (白昼之伦)   2015-05-18 14:01:00
各位大大,大家好:
小弟最近需要使用Matlab作影像处理,
以前比较没有接触过Matlab,所以对其有些不懂。
我的任务,简单的说,就是在软件上简化滤波系数,
因此不能使用imresize去跑,
但我遇到问题了:(以下是我写的程式码)
Texture = imread('Demo_texture_input.bmp');
ftr = [-0.032 0 0.284 0.496 0.284 0 -0.032];
h = imfilter(Texture,ftr);
t = h(1:end,1:5:end);
imwrite(t,'Lan.jpg');
1.假设我需要把图片长边缩成 5/6倍该怎么做呢?(960*540 > 800*540)
t = h(1:end,1:N:end) 变成每 N 点取一点...我怎么爬文都找不到怎么每6点取5点,
跪求大大们帮忙。
2.为什么我这样写,本来是RGB三色的图片处里完会变成三张(看起来是YUV)并列在一起呢?
作者: celestialgod (天)   2015-05-18 14:14:00
setdiff(1:N, 1:5:N)嗯,便是如此,你要每6点取5点就每6点去掉1点你可以直接用MATLAB doc功能去看setdiff的功能我不熟影像处理,你得等其他人回复
作者: Jerrynet (我爱Hot_game板)   2015-05-23 22:18:00
round(linspace(1,960,800))第二个问题是你的照片是三维的,所以你的t要改成t = h(巴拉巴拉, 巴拉巴拉, :)

Links booklink

Contact Us: admin [ a t ] ucptt.com