Changes

Jump to: navigation, search

GPU610/Team AGC

1,260 bytes added, 10:58, 4 October 2014
Gabriel's Findings
==== Gabriel's Findings ====
   == Pillow Library (Python) == The Pillow library is an image manipulation library for python.It has many common functions like re-sizing, cropping, rotating, blur, sharpen etc.It's available on github at https://github.com/python-pillow/Pillow  I used 4 filters for testing {| ! filter!! run time|-| Blur || 1.305s|-| Gaussian Blur || 4.492|-| Auto Contrast || 0.092|-| Grey Scale || 0.046|} See the code [https://gist.github.com/GabrielCastro/585cc5cbfd98b12b4ed7 on github]. ==== Gaussian Blur ==== A gaussian blur is a filter that can be applied to an image to make it blurry, in its simplest form it goes through every pixel in an image and averages it with its surrounding pixels.In the Pillow library it is implemented in a [https://github.com/python-pillow/Pillow/blob/master/libImaging/UnsharpMask.c#L58 C module]. This helps with processing time as C is hundreds of times faster than python. A quick look at the source shows that algorithm contains a nested for loop that's O(x * y) and then one that's O(x * y * r), that means that time grows n^2 based on the size of the image and n^3 based on the size of the blur radius. === Conclusion === With many nested operations, this a really good candidate for GPU paralization.
==== Christopher's Findings ====

Navigation menu