簡體   English   中英

如何在MATLAB中鎖定圖像尺寸

[英]How to lock image dimensions in MATLAB

所以我在MATLAB中有這個矩陣,200深x 600寬。 它代表一個2厘米深x 6厘米寬的圖像。 如何繪制此圖像以使其鎖定在適當的尺寸,即2厘米x 6厘米? 如果我使用imageimagesc命令,它會將它全部變形,並顯示錯誤的大小。 有沒有辦法將其鎖定為顯示x和y軸成比例的圖像?

第二個問題,我需要將此圖像設置為640x480幀(左右20像素黑色邊距,底部280像素黑色邊距)。 有沒有辦法做到這一點?

要保持縱橫比,可以使用axis equalaxis image命令。

引用文檔:

  • axis equal設置縱橫比,使得數據單元在每個方向上都相同。 根據x,y和z方向上的數據單元的范圍自動調整x軸,y軸和z軸的縱橫比。

  • axis image與軸相同,只是繪圖框緊緊圍繞數據`

第二個問題:

third_dimension_size=1; %# for b&w images, use 3 for rgb
framed_image=squeeze(zeros(640,480,third_dimension_size));
framed_image(20:20+600-1,140:140+200-1)= my_600_200_image;

imagesc(framed_image'); axis image;

set(gca,'DataAspectRatio',[1 1 1])

第二個問題:

new_image = zeros(480,640);
new_image(20:(200+20-1),20:(600+20-1)) = old_image;

作為其他答案的替代方案,您可能需要:

 set(gca, 'Units', 'centimeters', 'Position', [1 1 6 2])

確保在繪制圖像后執行此操作以使其他軸屬性正確。

對於第二個問題,請注意顏色通道的數量:

new_image = zeros(480,640, size(old_image));
new_image(20:(200+20-1),20:(600+20-1),:) = old_image;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM