How do i count the no of ones of 3D matrix?
조회 수: 3 (최근 30일)
이전 댓글 표시
- I have a big 3-D matrix, say 272*272*272, but contains either 0 or 1; how do i count the number of ones?
- In my project, i need to form a 8*8*8 cube (that why i choose the matrix is 272*272*272). How can i cut this big matrix into 8*8*8 and assign a index for every cube(8*8*8)?
댓글 수: 2
Image Analyst
2013년 11월 22일
Why do you need an index? What's wrong with the x,y,z value of the center? What are you going to do? Would you like to use blockproc()?
채택된 답변
Azzi Abdelmalek
2013년 11월 22일
편집: Azzi Abdelmalek
2013년 11월 22일
If A is your array
no1=sum(A(:))
For second question
A=rand(272,272,272);
idx2=8:8:272;
idx1=[1 idx2(1:end-1)+1];
n=numel(idx1);
[ii,jj,hh]=ndgrid(1:n,1:n,1:n);
out=arrayfun(@(x,y,z) A(idx1(x):idx2(x),idx1(y):idx2(y),idx1(z):idx2(z)),ii,jj,hh,'un',0);
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Operating on Diagonal Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!