Deleting duplicate images in 3-dimesional matrix
2 ビュー (過去 30 日間)
古いコメントを表示
Hello
I have a quite simple question that I can not solve.
I have a stack of images in a matrix N x M x D. Is there a way to delete duplicated images may be included in this matrix easily ?
I have some complex for loop algorithm that I could try to implement but I was thinking they may be an easier way.
Thank you in advance
0 件のコメント
採用された回答
Teja Muppirala
2012 年 7 月 1 日
%First, I'll make some sample data with some duplicates:
A = rand(200,200,50);
A(:,:,16) = A(:,:,41);
A(:,:,32) = A(:,:,41);
A(:,:,22) = A(:,:,29);
%Step 1. Convert the 3d matrix into a bunch of rows
sizeA = size(A);
A_rows = reshape(A,[],sizeA(3))';
%Step 2. Call unique on the rows
A_unique = unique(A_rows,'stable','rows');
%Step 3. Reshape the rows back into a 3d matrix
A_unique = reshape( A_unique' ,sizeA(1),sizeA(2),[]);
0 件のコメント
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!