Filter löschen
Filter löschen

How to retrieve first 4 digits after decimal point?

12 Ansichten (letzte 30 Tage)
Abdul Gaffar
Abdul Gaffar am 4 Dez. 2019
Kommentiert: Star Strider am 4 Dez. 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 ?

Akzeptierte Antwort

Star Strider
Star Strider am 4 Dez. 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 Kommentare
Abdul Gaffar
Abdul Gaffar am 4 Dez. 2019
Thanks, and how to retrieve last 4 digits?
Star Strider
Star Strider am 4 Dez. 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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by