Speed and robustness ideas

wiredfool 2014-02-13 11:54:24 -08:00
parent ad1089461c
commit b6955b394b

@ -4,4 +4,12 @@ Welcome to the Pillow wiki for GSOC Ideas!
_From Prashant Shrivastava, a potential GSOC participant who contacted Alex Clark re: Pillow participating in GSOC:_
> Sir, First of all i would like to thank you for developing a very good Imaging Library for Python. It works wonders. I have been using the "Pillow" for a while now as my current project deals with computer vision and image processing. It has helped me alot and i would like to contribute to its development and get it more recognition. There are libraries like opencv which are more famous due its portability on different platforms. I feel that if a proper documentation in form a book with examples are provided to a budding user then more and more programmers will be attracted to this very good library. I was wondering if the "Pillow" is going to provide mentor-ship for a GSOC project. It would be very well recognized platform to showcase the power of image processing through python. I eagerly await your response and views about my idea. Regards, Prashant
> Sir, First of all i would like to thank you for developing a very good Imaging Library for Python. It works wonders. I have been using the "Pillow" for a while now as my current project deals with computer vision and image processing. It has helped me alot and i would like to contribute to its development and get it more recognition. There are libraries like opencv which are more famous due its portability on different platforms. I feel that if a proper documentation in form a book with examples are provided to a budding user then more and more programmers will be attracted to this very good library. I was wondering if the "Pillow" is going to provide mentor-ship for a GSOC project. It would be very well recognized platform to showcase the power of image processing through python. I eagerly await your response and views about my idea. Regards, Prashant
## Speed
Investigate speeding up core operations by vectorizing core functionality. This could be a combination of autovectorization in the compiler, manual recoding of tight loops in vector form, or writing kernels for OpenCL.
## Robustness
Pillow decodes a lot of image formats, some of which are safer and better specified than others. Experience with [other projects](http://googleonlinesecurity.blogspot.com/2014/01/ffmpeg-and-thousand-fixes.html) has shown that there are many bugs lurking in otherwise functional code. Running a large corpus of valid, invalid, or otherwise fuzzed images while recording and investigating errors and crashes should improve the robustness of Pillow.