2013-08-21 41 views
6

Câu hỏi này có thể thực sự đơn giản, nhưng xin vui lòng trần với tôi.Làm thế nào để biết loại hình ảnh matlab

Khi tôi sử dụng tính năng đọc trong MATLAB và đọc một hình ảnh, làm cách nào để biết liệu rgb, thang xám hay đơn lập trình của nó? Trợ giúp của bạn được đánh giá cao. Tôi đã thử googling, nhưng tôi không chắc chắn đúng từ hoặc cụm từ tôi nên nhập để tìm wat đang tìm kiếm chính xác. Cảm ơn trước. i ai có thể temme các liên kết hoặc thuật ngữ thích hợp, đó sẽ là thực sự hữu ích.

I1 = imread('sample_image.jpg'); 

làm cách nào để biết loại I1 nào trước khi chuyển đổi.?

+3

bạn nên đọc này: http://blogs.mathworks.com/steve/2007/03/09/what-happen-to-isgray-isind-isbw-and-isrgb / – Amro

Trả lời

8

Bạn có thể sử dụng imfinfo để lấy thông tin về một tập tin hình ảnh trước khi bạn tải nó:

info = imfinfo('sample_image.jpg'); 
info.ColorType % e.g. 'grayscale', 'truecolor', 'indexed' 
info.BitDepth % e.g. 8, 16 

Bạn cũng có thể nhìn vào phần trợ giúp trên imread để xem những gì các lớp đầu ra sẽ được cho các loại tập tin khác nhau. Vấn đề đi kèm trong việc xác định sự khác biệt giữa hình ảnh thang độ xám và tệp màu được lập chỉ mục - những tệp này sẽ có cùng kích thước và lớp. Trong trường hợp này bạn cần kiểm tra ColorType trước và tải các bản đồ màu trong khi bạn đọc hình ảnh:

[I, map] = imread(filename)

Các vấn đề liên quan