octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #54567] median(uint8) gives bad results


From: anonymous
Subject: [Octave-bug-tracker] [bug #54567] median(uint8) gives bad results
Date: Fri, 24 Aug 2018 11:50:41 -0400 (EDT)
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36

URL:
  <http://savannah.gnu.org/bugs/?54567>

                 Summary: median(uint8) gives bad results
                 Project: GNU Octave
            Submitted by: None
            Submitted on: Fri 24 Aug 2018 03:50:40 PM UTC
                Category: Octave Function
                Severity: 3 - Normal
                Priority: 5 - Normal
              Item Group: Incorrect Result
                  Status: None
             Assigned to: None
         Originator Name: Etienne de Foras
        Originator Email: address@hidden
             Open/Closed: Open
         Discussion Lock: Any
                 Release: 4.4.1
        Operating System: Microsoft Windows

    _______________________________________________________

Details:


If I define:

u= [1 140 140 255];  
u8=uint8(u);

then median(u)=140 (correct)
but  median(u8)=128 (incorrect, should be 140)


The bug disappear with odd size data, the median with even size data is
computed as (140+140)/2, but with saturation to 255 due to uint8 type and then
divided by two ->127 (or 128 with rounding).
We may use the type int32 or double for the sum and division by 2 and then
convert back to uint8


(Thanks for GNU Octave !)




    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?54567>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]