我想寫一個程序,它需要一個由多個png文件組成的矩陣,這些文件被保存爲矩陣內的子矩陣。我有10個相同大小的png文件保存爲image_1,image_2等,我希望能夠在以後的循環中單獨瀏覽每個圖像。創建3D矩陣是實現這一目標的最佳方式,如果是這樣,那麼稍後如何將其用於上述目的?如何從多個imread變量創建3D矩陣?
0
A
回答
0
如果你只是想創建您的圖像的3D矩陣,你可以做大意如下的內容:
>> image_1 = rand(5);
>> image_2 = rand(5);
>> [m, n] = size(image_1);
>> images = zeros(m, n, 2);
>>
for ii=1:2
eval(sprintf('images(:,:,%d) = image_%d;', ii, ii));
end
>>
結果會是這樣的:
>> images
images(:,:,1) =
0.9037 0.0305 0.6099 0.1829 0.1679
0.8909 0.7441 0.6177 0.2399 0.9787
0.3342 0.5000 0.8594 0.8865 0.7127
0.6987 0.4799 0.8055 0.0287 0.5005
0.1978 0.9047 0.5767 0.4899 0.4711
images(:,:,2) =
0.0596 0.0967 0.6596 0.4538 0.1734
0.6820 0.8181 0.5186 0.4324 0.3909
0.0424 0.8175 0.9730 0.8253 0.8314
0.0714 0.7224 0.6490 0.0835 0.8034
0.5216 0.1499 0.8003 0.1332 0.0605
>>
如果你覺得以後個別的變量是不必要的,你可以簡單地將它們清除如下:
>>
for ii=1:2
eval(sprintf('clear image_%d;', ii));
end
>>
新的3D矩陣可能稍後用作images(:,:,1)
,images(4,3,2)
等等。
0
如果你知道圖像的文件名格式,這是相當簡單的;例如:
directory = pwd; % select working directory (but could be anything)
Nimages = 5;
% Use a cell array to initially store results,
% as we don't know how big the images are yet
myImages = cell(Nimages, 1);
for iImg = 1:Nimages
% Build file name
imgFilename = sprintf('Image_%i', iImg);
% Make it fully qualified using directory
imgFilename = fullfile(directory, imgFilename);
% Load the image
myImages{iImg} = imread(imgFilename);
end
% This will convert from cell to 3D matrix:
myImages = cat(3, myImages{:})
可以使用
myImages(:, :, n)
其中n
是圖像數日後訪問這些圖像。
相關問題
- 1. 從多個列向量創建矩陣
- 2. 從當前3個2D矩陣創建新的3D矩陣
- 3. 創建鉛變量矩陣
- 4. 用R創建3D矩陣?
- 5. 如何從矢量創建矩陣
- 6. 從Matlab中現有的2d矩陣創建3d矩陣
- 7. 如何使用CSS 3d矩陣創建彎曲變形效果
- 8. 如何將3D矩陣轉換爲多個2D矩陣?
- 9. 從一個矩陣創建許多矩陣與循環?
- 10. Matlab的變換2D矩陣3D矩陣
- 11. opencv:創建矩陣或向量矩陣
- 12. 創建指標變量矩陣
- 13. Numpy:矩陣乘以3D張量 - 建議
- 14. Matlab 3D矩陣變換第三維由2D矩陣矢量化
- 15. 如何在PHP中從多個變量創建一個變量?
- 16. 如何創建多類型矩陣?
- 17. 從R中的向量創建矩陣
- 18. 從給定的矢量創建矩陣
- 19. 從矢量複製創建矩陣,python
- 20. 從矢量創建R中的矩陣
- 21. 從R中的矢量創建矩陣
- 22. 從3D numpy陣列創建3D圖形
- 23. 從MATLAB中的矩陣和矢量創建三維矩陣
- 24. 如何從csv文件創建矩陣?
- 25. 如何從矩陣創建數據框
- 26. 如何從列表創建矩陣?
- 27. 兩個3D點雲變換矩陣
- 28. Haskell - 如何創建矩陣
- 29. MATLAB矢量創建一個矩陣
- 30. 如何根據分類變量創建交互設計矩陣?
我敢肯定,你會從標籤中找出我想說的是,這是在matlab中。 – 2013-05-11 07:16:12