A summary about my GSoC progress
Hi,
This is a short summary about my GSoC progress. The original plan is
listed as below:
1. The conversion between spatial domain and frequency domain.
2. Implementation of filters.
3. Filtering processing.
4. Miscellaneous services.
5. Applications.
Part 1 looks like very easy to implement, but in actual it is the most
challenging part. Pippin and me discussed for many times about how to
storage a frequency "image" in a GeglBuffer. The data structure of the
buffer was changed three times. The ops(at svn version r2358) which
used 4-component buffer had been already usable, but after discussion
we decide to migrate the code to a new babl_format, which has 8
components. Now the migration has completed.
Part 2 and Part 3 based on the same codes. Filtering processing is an
complex-number matrix(the frequency "image") multiplying another
complex-number matrix, and a filter is the matrix. The code for Part 3
has been written and in debugging. The Part 2 haven't start yet. In
Part2, every op's job is calculating to generate the matrix with the
parameters like bandwidth and cut-off frequency, and then use.Part3's
codes to process the image.
Part 4 and Part 5 haven't start, they are not the most important parts
after all. Once Part 1,2,3 are stable, Part 4 and Part 5 can be easily
completed, and Part 5 maybe need to use definition language like XML.
What to do after mid-term:
1. test and fix bugs in exist codes.
2. implement kinds of filters(matrices) like Gaussian-lowpass etc.
3. some miscellaneous functions such as a homomorphic filter. (optional)
4. documents for this frequency processing kit.
Regards,
Zhang