
I vote to accept GIL into Boost This is a short review as most comments/suggestions have already been made in the mailing list. My review is from the library user point of view. Design ====== It's GIL strength. Implementation ============= Average. The dynamic_image, io and numeric extensions are not part of the review but they should. They have not been added because the authors consider the numeric extensions are not fully optimized. Although there are claims of performance superiority no benchmarks are provided. The most common image operations, save jpeg and downsample jpeg are provided but it is not clear they are optimized for speed. Useful downsample jpeg performance optimizations are not provided. Check epeg. "It makes use of libjpeg features of being able to load an image by only decoding the DCT coefficients needed to reconstruct an image of the size desired. This gives a massive speedup. If you do not try to access the pixels in a format other than YUV (or GRAY8 if the source is grayscale) then it also avoids colorspace conversions as well." I don't find the library syntax very easy but I don't have clear suggestions either. Documentation ============= Good reference documentation in the design guide but awful documentation for the library end user. The tutorial could be improved by emulating Boost.asio clear step-by-step tutorial examples. The numeric extensions are not documented and there is not much use for the core library without the numeric extensions. I miss the traditional Boost-like docs, with Rationale, FAQ, ... Potential usefulness ================ Great potential, somewhat hampered by providing just the image container. Did you try to use the library? With what compiler? Did you have any problems? ================================================================ Yes g++ 4.0.2 x86_64 The library had not been tested on x86_64 so a few bugs were uncovered before the review started How much effort did you put into your evaluation? A glance? A quick reading? In-depth study? ============================================================================ 5-10 hours. Wrote a few programs and had multiple private e-mails with the developers. Are you knowledgeable about the problem domain? ========================================== Yes but not an expert Overall strengths ============== - Library design - Willingness of the developers to continue to improve the library - Opportunity for VIGRA or other specialized libraries to provide algorithms as separate Boost libraries Weaknesses ========== - No algorithms library provided (= no basic set of image processing algorithms provided) - Theoretical approach (core is container only) - Lacks what VIGRA does well (practical image processing, filters, segmentation, image analysis ..) - Not conforming to Boost standards (directory structure, docs, tests, ...) Thanks for providing GIL and I hope you continue to develop it. I will use it !