目前我正在努力创建一个解决方案,以在MATLAB中使用interp1()调整图像大小(颜色和灰度)。我到处寻找,但我发现的唯一解决方案是使用interp2(),这是我不能。我一直在尝试和研究近3天,但没有任何帮助。先谢谢你。MATLAB中的图像插值涉及interp1
-1
A
回答
0
由于您严格使用interp1 ..您可以按照以下步骤操作。根据全局指标进行插值。
I = imread('peppers.png') ;
[nx,ny,t] = size(I) ;
%%
dx = 4 ; dy = 4 ; % see to it that dx and dy are multiples of nx and ny
%% Global indices
idx = 1:nx*ny ;
% for interpolation
idxi = 1:dx:nx ; idyi = 1:dy:ny ;
[I1,J1] = meshgrid(idxi,idyi) ;
idxi = sub2ind([nx,ny],I1,J1)' ;
%%
nxi = nx/dx ; nyi = ny/dy ;
I1 = zeros(nxi,nyi,t) ;
%%
for i = 1:t
C = I(:,:,i) ;
temp = interp1(idx,double(C(:)),idxi(:)) ;
I1(:,:,i) = reshape(temp,nxi,nyi) ;
end
I1 = uint8(I1) ;
imshow(I1)
size(I)
size(I1)
+0
非常感谢你@siva道具给你的男人:)我会研究这一点。 –
+0
如果我想增加图像的大小,该怎么办? –
0
如果您反对插值,您可能跳过几行和几列。
I = imread('peppers.png') ;
size(I)
I1 = I(1:2:end,1:2:end,:) ;
size(I1)
而且也,你可以看看到imresize。
I2 = imresize(I,[200 200]) ;
+0
我必须在这个问题中使用interp1(),并且在这种情况下不能使用imresize()。提前致谢。 –
相关问题
- 1. Matlab,interp1
- 2. Matlab图像插值interp2()
- 3. 如何像MATLAB一样使用R interp1?
- 4. C实现Matlab interp1函数(线性插值)
- 5. 涉及绝对值
- 6. MATLAB:涉及大数字的计算
- 7. 如何使用interp1在MATLAB
- 8. Matlab插值图
- 9. 矢量化循环,其涉及在MATLAB
- 10. 四与mvnpdf涉及载体在MATLAB
- 11. 插值图像中的像素颜色,matlab
- 12. matlab 4D插值图
- 13. Matlab contourf图插值
- 14. 错误的RelativeLayout涉及2插件时
- 15. 涉及jQuery的
- 16. 意图涉及内部类
- 17. 是否涉及地图
- 18. 在matlab中计算涉及矩阵的函数的Hessian矩阵
- 19. Matlab中的插值
- 20. 在matlab中绘制一个涉及积分的函数
- 21. 在Matlab中求解一个涉及积分的方程
- 22. 使用interp1时内存不足。 Matlab
- 23. Matlab interp1图出现与数据的偏移
- 24. 未涉及Maven插件执行 - 再次
- 25. python中的图像插值
- 26. Matlab找到固有频率,interp1函数创建NaN值
- 27. 插值直方图matlab
- 28. 涉及位置
- 29. 涉及DMV
- 30. Ç涉及管
为什么你不能_interp2_? –
我知道使用interp2比较容易,但在这个问题中,我只能使用interp1。 –
我一直在看这[帖子](https://stackoverflow.com/questions/6183155/resizing-an-image-in-matlab)并试图引用它,但仍有错误或丢失。 –