two bugs in one (rgb2color & bug_report)

Ben Abbott bpabbott at mac.com
Sun Jun 7 02:52:41 CDT 2009


On Jun 7, 2009, at 2:59 AM, Jaroslav Hajek wrote:

> On Sun, Jun 7, 2009 at 5:19 AM, Ben Abbott<bpabbott at mac.com> wrote:
>>
>> On Jun 5, 2009, at 7:20 AM, Ben Abbott wrote:
>>
>>> The bug_report function failed for me today (I think this has  
>>> already
>>> been reported, but if not ... )
>>>
>>> The bug I wanted to report was ...
>>>
>>> --------------------
>>> octave:6> h = plot (1:10)
>>> octave:7> set (h, "color", rgb2gray (get (h, "color")))
>>> error: invalid value for color property "color"
>>> --------------------
>>>
>>> However, the following command works.
>>>
>>> --------------------
>>> octave:8> set (h, "color", mean (get (h, "color"), 2) * [1 1 1])
>>> --------------------
>>>
>>> Digging a bit more
>>>
>>> --------------------
>>> octave:9> rgb = get (h, "color"); whos rgb
>>> Variables in the current scope:
>>>
>>>  Attr Name        Size                     Bytes  Class
>>>  ==== ====        ====                     =====  =====
>>>       rgb         1x3                         24  double
>>>
>>> Total is 3 elements using 24 bytes
>>>
>>> octave:10> gray = rgb2gray (get (h, "color")); whos gray
>>> Variables in the current scope:
>>>
>>>  Attr Name        Size                     Bytes  Class
>>>  ==== ====        ====                     =====  =====
>>>       gray        1x3                         24  double
>>>
>>> Total is 3 elements using 24 bytes
>>>
>>> octave:11> gray
>>> gray =
>>>
>>>    0.33333    0.33333    0.33333
>>> --------------------
>>>
>>> I'm at a loss to see why the 1x3 double from rgb2gray is an invalid
>>> color value.
>>>
>>> When I tried bug_report ...
>>>
>>> --------------------
>>> bug_report
>>> Please enter a one-line description of your bug report.
>>>
>>> Subject: rgb2color produces an invalid color value
>>> sh: octave-bug-3.1.55: command not found
>>> --------------------
>>>
>>> John/Jaroslav,
>>>
>>> If it is not already too late, should the bug_report problem be
>>> resolved prior to the 3.2 release.
>>>
>>> Ben
>>
>> I've experimented more. Using full() resolves the problem
>>
>>        octave:6> h = plot (1:10)
>>        octave:7> set (h, "color", full (rgb2gray (get (h, "color"))))
>>
>> But
>>
>>        octave:8> issparse(rgb2gray (get (h, "color")))
>>        ans = 0
>>
>> It looks to me like there is a low level problem.
>>
>> Ben
>
> Yes. The catch was that rgb2gray can produce a range, a "set" was not
> ready for it.  Fixed. Btw, I would appreciate an explicit alert when
> you use an external package function (rgb2gray) in a bug report for
> Octave.

Sorry, I hadn't noticed rgb2gray was part of the image package.

> regarding bug_report, it only works when Octave is installed using
> "make install", is that your case? if yes, I don't know what's failing
> for you.

You inference is correct.

Thanks
Ben


More information about the Bug-octave mailing list