[SciPy-User] FreeImage <-> numpy IO wrappers
Zachary Pincus
zachary.pincus at yale.edu
Mon Oct 25 08:56:13 EDT 2010
Hi Luis,
>> Anyway, the only serious change I've made has to do with properly
>> saving 2D uint8 images, which need to have a palette defined for
>> certain formats (PNG maybe? I don't recall...). Anyway, the
>> scikits.image version has diverged in structure somewhat from the one
>> I use internally in my code, but here's the core of the change:
>
> Another change I made was to get rid of some copies and make the
> Python
> wrapping much faster. This is probably what you're seeing here.
I think that this commit:
http://github.com/luispedro/mahotas/commit/f04f224079f2ed9fc70bd8b25d3fab2c0b2df622
breaks reading of images with an alpha channel, which in the new
version will get silently discarded. The old version modified the
array in-place so that the optional alpha doesn't get touched. Your
version will need to have different code-paths for
BGR and BGRA images, which is of course easy enough to do.
Also, certain image formats require palettes with 8-bit greyscale
images (this is what I was talking about above), and so images saved
with FreeImage won't necessarily open correctly without a palette
defined. This commit to the scikits version (which I sketched out
before) does that:
http://github.com/stefanv/scikits.image/commit/325b59c59ade2a09f2b788f26801bb3f8d8a0d5e
Zach
On Oct 25, 2010, at 7:20 AM, Luis Pedro Coelho wrote:
> Hi,
>
> On Thursday, October 21, 2010 11:49:21 am Zachary Pincus wrote:
>>> Whatever fixes you make, please remember to contribute them back to
>>> scikits.image! The plugin is being maintained there as well.
>>
>> Oh gosh, I didn't realize that -- great! (Did you ever diagnose that
>> segfault?)
>
> I made some of the changes to the scikits.image plugin when I
> "borrowed" this
> for mahotas (my own image processing library [1]).
>
> I did fix one or two bugs in dealing with memory so those might
> explain the
> random segfaults.
>
> [1] : http://luispedro.org/software/mahotas.
>
>> Anyway, the only serious change I've made has to do with properly
>> saving 2D uint8 images, which need to have a palette defined for
>> certain formats (PNG maybe? I don't recall...). Anyway, the
>> scikits.image version has diverged in structure somewhat from the one
>> I use internally in my code, but here's the core of the change:
>
> Another change I made was to get rid of some copies and make the
> Python
> wrapping much faster. This is probably what you're seeing here.
>
> HTH
> Luis
> _______________________________________________
> SciPy-User mailing list
> SciPy-User at scipy.org
> http://mail.scipy.org/mailman/listinfo/scipy-user
More information about the SciPy-User
mailing list