image processing in D

Emil Madsen sovende at gmail.com
Sun Apr 3 15:35:01 PDT 2011


On 3 April 2011 20:33, Andrei Alexandrescu <SeeWebsiteForEmail at erdani.org>wrote:

> On 4/3/11 7:25 AM, Fawzi Mohamed wrote:
>
>> On 2-apr-11, at 10:40, aman bansal wrote:
>>
>>  i was trying to chalk out a strategy to go for image processing in
>>> D.the closest reference i found was in the implementation of python
>>> imaging library.it <http://library.it> has modules for imaging,and
>>>
>>> input output of jpeg and bmp file formats.the data structures used
>>> also are quite accurate.i would like to ask developers what can be the
>>> possible problems in implementing image i/o in D on the lines of
>>> python imaging library.
>>>
>>
>> As I told you via email
>>
>> there are two main things, one is reading/writing several formats, I
>> would say that you should support at least one standard (simple) format
>> natively (the simplest would be netpbm format) but then you could rely
>> on libraries to support more.
>> Use of external libraries should be discussed with others also, because
>> one should rely only on libraries that are widely available,
>> cross-platform and with acceptable licensing.
>>
>> About the image processing itself you probably want to have a simple
>> flat representation of the image (as 2d array), and then be able to
>> apply several operations on it.
>> General convolution is probably something you want to have, masked
>> operation might also be very useful.
>> Not sure about which other operations you want to support.
>> In D1 as part of blip I have implemented nearest neighbor convolution,
>> it could be useful to you.
>>
>> Not sure which bit depth you want to support, one can build a wrapper to
>> access arbitrary bit depth/bitchannel contiguous block of memory as 1d
>> or 2d array (for example 4channel 12 bit images), this can be useful as
>> base type for operations with images that might have an extended bit
>> range.
>>
>> is this for a GSoC project?
>>
>
> Yes, that is a GSoC project.
>
> Aman, you may want to read the posts I wrote with advice to other students
> before completing your proposal.
>
> A strong proposal would convince us that you (a) understand your domain
> rather well, (b) you understand D's specifics enough to define a good API
> for it, (c) you have studied and absorbed similar endeavors in other
> languages and frameworks, and (e) you have what it takes to complete the
> project.
>
>
> Good luck!
>
> Andrei
>
>
This about image processing, got me thinking, hows the shader support for D
currently? - Interfaceable though C?
Because for image processing, thats def. the way to go, at least in my
opinion, that is if you want acceptable processing speeds.

And a more specific question; say one wants to blur a picture
with Gaussian blur, how would D ranges deal with the 2d array?

-- 
// Yours sincerely
// Emil 'Skeen' Madsen
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20110404/639ef9aa/attachment.html>


More information about the Digitalmars-d mailing list