Azzera filtri
Azzera filtri

how to convert a double matrix image to a unit8 matrix ?

104 visualizzazioni (ultimi 30 giorni)
Hi everybody :) I have an image ,a matrix with values between -0.0934 and 0 and i want to convert it to unit8 matrix with values between 0 ans 255.

Risposta accettata

Azzi Abdelmalek
Azzi Abdelmalek il 8 Mar 2013
Modificato: Azzi Abdelmalek il 8 Mar 2013
A=imread('yourimage')
B=uint8(A)
EDIT
d=linspace(min(im(:)),max(im(:)),256)
im1=uint8(arrayfun(@(x) find(abs(d(:)-x)==min(abs(d(:)-x))),im))
  4 Commenti
Azzi Abdelmalek
Azzi Abdelmalek il 8 Mar 2013
Modificato: Azzi Abdelmalek il 8 Mar 2013
Try this
%If im is your image
d=linspace(min(im(:)),max(im(:)),256)
im1=uint8(arrayfun(@(x) find(abs(d(:)-x)==min(abs(d(:)-x))),im))

Accedi per commentare.

Più risposte (1)

Image Analyst
Image Analyst il 8 Mar 2013
You can use the mat2gray() function:
image8Bit = uint8(255 * mat2gray(floatingPointImage));
It will scale your values to the range 0-255.
  10 Commenti

Accedi per commentare.

Categorie

Scopri di più su Convert Image Type in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by