Image Processing docs structure based on "Principles of Digital Image Processing" book
Overview
This is a task to organize documentation of our the Image Processing features in GIL following on structure of the topics as proposed in the 3-volume series of the Principles of Digital Image Processing book (1, 2, 3).
Simply, just following the table of contents of those books would help to come up with structure that is clean, maintainable, future-proof and friendly to readers, those familiar with image processing concepts and GIL as well as newbies.
Task
Below is proposal of the the "Image Processing table of contents. Please, feel free to comment and discuss it in the comments below or following the thread on the boost-gil mailing list.
ToC: Image Processing
- Histograms and Statistics
- Grayscale images
- Color images
- Basic Point Operations - algebraic and logical operations to modify pixel values without changing size, geometry or structure of image
- Intensity (contrast , brightness, inverting, simple global thresholding)
- Histogram Equalization
- Gamma Correction
- Color Space Transformations
- Filters (grayscale and color images)
- Linear
- Non-linear
- Morphological
- Classification and Segmentation - methods for labeling, binarizing and finding
- Thresholding
- Simple Global Thresholding
- Automatic Thresholding
- Global Adaptive Thresholding
- Local Adaptive Thresholding
- Labeling Regions
- Thresholding
- Detectors - methods for object detection
- Edges
- Curves
- Corners
- Contours
- Geometric Operations - operations altering image geometry
- Image Transforms - operators altering geometry and nature of the image information as well as geometry of the image itself
- Distance Transform
- Fourier Transform (DFT, FFT)
- Cosine Transform (DCT)
- Haar Transform
- Hough Transform
Changes History
Changes of the proposal above following comments and discussions from you!
- Initial proposal ...
can I try to look into the issue to get overview of algorithms that are used while image processing?
You're welcome to give it a go, but be warned its not a quick bit of work. Instead of diving deep, you can help @lpranam with collecting the image processing algorithms to the wish list here https://github.com/boostorg/gil/wiki/Image-Processing-Algorithms
@mloskot Not that I am rushing from one issue to another, but I just remembered this mailing thread (on FFT in Boost.Gil) which I had started as an initial proposal to my GSoC project idea .This had recieved some nice inputs from various people. Although , I was not well equipped at that time to continue researching on this topic , I feel we could add this idea to the wiki of GIL so that if anyone(in future) wants to take a look at this, they would not have to dig it out from the other mails. Tagging @lpranam also. Thanks.
@codejaeger https://github.com/boostorg/gil/wiki/Image-Processing-Algorithms is a general list of the IP features and algorithms, it is not just related to GSoC, so feel free to add a row to the table with link the FFT thread there.
For GSoC specifically, although students are welcome to find and suggest their project ideas, it is a common way in finding the right project, finding a topic that both they and the mentor is interested in may be difficult, especially if there is a shortage of mentors. I personally would prefer to focus on completing the work on the basics first as continuation of the previous year.
@mloskot I have updated the page accordingly
Regarding
I personally would prefer to focus on completing the work on the basics first as continuation of the previous year
I have thought of a proposal not entirely related to
completing the work on the basics first as continuation of the previous year.
But it is mentioned in the current GSoC ideas page . Is that okay in the sense will I find a mentor w.r.t those projects? Thanks.
@codejaeger There are mentors available, two mentors, so yes you (as well as other students submitting their proposals) have chance to find mentor.