Why imread makes 3D array from simple png?
조회 수: 25 (최근 30일)
이전 댓글 표시
I want to count squares and circles on the following png picture:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/157362/image.png)
I begun my adventure with writing:
obrazek=imread('trial.png');
I can see it created an array, but I have no idea why does it have three dimensions. How to interpret this last dimension (155x298 x3)? I guess that first two (155x298) are the size of a picture (in pixels).
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/157363/image.png)
댓글 수: 0
채택된 답변
Image Analyst
2016년 10월 23일
Because it's a color image. The only two colors in it are black and white, but it's still color (with 2 colors). If you want a gray scale image, simply extract one of the color channels:
obrazek = obrazek(:, :, 2); % Extract green channel. Resulting image will be grayscale.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Modify Image Colors에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!