How to retrieve first 4 digits after decimal point?

19 visualizaciones (últimos 30 días)
Abdul Gaffar
Abdul Gaffar el 4 de Dic. de 2019
Comentada: Star Strider el 4 de Dic. de 2019
I have to retrieve first 4 digits after decimal point in HH band of the following code:
img = imread('cameraman.tif');
a = img(1:8,1:8);
[LL,LH,HL,HH] = dwt2(a,'db4');
Moreover, how can I fetch more than 4 digits (after decimal) in the same HH band ?

Respuesta aceptada

Star Strider
Star Strider el 4 de Dic. de 2019
One approach:
x = pi
AfterDecimal = rem(x,1)
FirstFour = fix(AfterDecimal*1E+4)*1E-4
producing:
x =
3.141592653589793
AfterDecimal =
0.141592653589793
FirstFour =
0.141500000000000
  2 comentarios
Abdul Gaffar
Abdul Gaffar el 4 de Dic. de 2019
Thanks, and how to retrieve last 4 digits?
Star Strider
Star Strider el 4 de Dic. de 2019
The easiest way to do that is to convert it to a character array and index the last four digits, then convert it back to a numerical variable:
xstr = num2str(AfterDecimal,15);
LastFour = str2double(xstr(end-3:end))
producing:
LastFour =
9793
Experiment to get different results.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Matrices and Arrays en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by