Convert bitdepth of png image

7 ビュー (過去 30 日間)
berkaoui sara
berkaoui sara 2015 年 3 月 17 日
編集済み: Christiaan 2015 年 3 月 18 日
How to convert the image with the following information: ColorType: truecolor Format: png bitDepth: 24
to a png grayscale image with bitdepth=8 in matlab ?

回答 (1 件)

Christiaan
Christiaan 2015 年 3 月 18 日
編集済み: Christiaan 2015 年 3 月 18 日
Dear Sara,
You can use the function imfinfo to get i.e. the bit depth of the image. With the function rgb2gray you can convert your RGB image into a grey image.
An example how to perform a RGB (24 bitDepth) to a grayscale (8 bitDepth) is shown below:
clc;clear all;close all;
[RGB,map_RGB] = imread('bitdepth_24bpp_580.png');
RGB_info = imfinfo('bitdepth_24bpp_580.png');
RGB_BitDepth_original = RGB_info.BitDepth
Gray= rgb2gray(RGB);
imwrite(Gray,'imagegrey.png');
grey_info = imfinfo('imagegrey.png');
Grey_BitDepth = grey_info.BitDepth
figure(1);
subplot(2,1,1);imshow(RGB,map_RGB);
subplot(2,1,2);imshow(Gray);
The image that I used can be found in the attachment.
Good Luck! Christiaan van Ommeren

カテゴリ

Help Center および File ExchangeImages についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by