[Digikam-devel] Re: [digiKam]GSOC-2011--Clone Tool for Image Editor

Gilles Caulier caulier.gilles at gmail.com
Tue Mar 29 09:37:24 BST 2011


Jie,

In your previous mail, you talking to be interrested by Camera GUI
Revamp project, not Clone Tool for Image Editor... Right ?

Gilles Caulier

2011/3/29 Gilles Caulier <caulier.gilles at gmail.com>:
> Jie,
>
> I open a new folder in KDE wiki about GoSC 2011.
>
> http://techbase.kde.org/Projects/Digikam/GSOC2011
>
> It will be great if you can create a sub-page with your proposal contents
>
> Best
>
> Gilles Caulier
>
> 2011/3/29 Gilles Caulier <caulier.gilles at gmail.com>:
>> Thanks Jie,
>>
>> It's a good proposal.
>>
>> I think google will need a document (ODF or PDF) to register your
>> paper. I recommend you to prepare a file.
>>
>> Best
>>
>> Gilles Caulier
>>
>> 2011/3/29 张洁 <zhangjiehangyuan2005 at gmail.com>:
>>> Proposal  for digiKam--Clone Tool for Image Editor
>>>
>>> Information about me
>>>
>>> I'm Zhang Jie. As a student  in Zhejiang University (ZJU), my
>>> research interests are in graphical image processing. I'm very interested in
>>> the Clone Tool for Image Editor by digiKam at GSoC 2011.This is the second
>>> year of my Master study period. I'd like to join in the open source.
>>>
>>> I uses digiKam to organize my pictures. So I'm very familiar with
>>> this software.
>>>
>>> I have some experience that might  be relevant to the project.  I have
>>> learned QT for 2 years and I did a simple Image Editing software last year.
>>> There are many tools in the software, such as brush, eraser, scissors tool
>>> etc. To do the work I studied all the demoes in QT. Also, as a
>>> Lab project, I have written a plug-in for photoshop--generat mapping graph
>>> according to a picture. I use openCV library in the program. For programming
>>> language, I use C++.
>>>
>>> I will spend more than 40 hours every week to work on the project.  For the
>>> mentor to track my work , I will  submit a progress record once a week.
>>> Also, we can have meetings on IRC. In fact, I submitted a progress record to
>>> my instructor every week when I worked on a software. As long as I
>>> can coordinate with the mentor, it really doesn't matter where he/she
>>> lives.
>>> Here is my contact information:
>>> IRC nick: zhjie
>>> email address: zhangjiehangyuan2005 at gmail.com
>>> postal address:China ,Hang Zhou, Zhejiang University, 38 Zheda Road, Fourth
>>> quarters
>>> telephone number:+86 15268566953
>>> Bye the way, my native language is Chinese, I live in Hang Zhou. As for
>>> time, we use Beijing Time Zone , that's 8 hours earlier than UTC.
>>>
>>> Problem description
>>>
>>> As a free, open-source, efficient image organizer,  digiKam supports all
>>> major image file formats, and can organize collections of photographs in
>>> directory-based albums, or dynamic albums by date, timeline, or by tags.
>>> With the help of digiKam, people can organize their pictures in perfect
>>> order.What if you are not satisfy your pictures taken by camera? What if
>>> there is  annoying dusts, spots, and other unwanted artefact in your
>>> picture? The thing you just need is a clone tool. You can clone from the
>>> same picture or other pictures a similar regional to patch the dusts etc.
>>> Recent research has made it possible to seamless clone, clone the clear
>>> rectangle that you choose  to the dust area, it can  coordinate with the
>>> surrounding environment in the picture, seamlessly.
>>> The aim of this project is to provide a clone tool like this to support
>>> picture editing.
>>>
>>> Implementation plan
>>>
>>> The project consists of two components:
>>>
>>> A friendly interaction interface for clone tool
>>>
>>> For convenient operation of the clone tool, I would  like to design the tool
>>> as a brush.  You can change the size of the brush as well as shape maybe.
>>> First chose a central region(without dusts, spots, and other unwanted
>>> artefact ), then  draw on the dusts area in the picture use the brush. I
>>> want to make to tool just like Healing brush tool in Photoshop.
>>>
>>> Clone
>>>
>>> The basic method of clone is to  remove defects in images . Copying
>>>  directly  is not advisable, as it cannot suit the environment in the image.
>>> The source rectangle may be lighter or has a different color comparing with
>>> the target area. What the project should achieve is to change the color and
>>> light  of the source rectangle according to the target area. That is
>>> seamless clone.
>>>
>>> Related Work in this area are as follows
>>>
>>> In paper "Poisson Image Editing" , the authors achieve seamless cloning by
>>> solving a Poisson equation to fill in the selected area. The right hand side
>>> ’source’ term in the equation is Laplacian of the sampled image. Dirichlet
>>> boundary conditions make the solution continuous at the boundary. Source
>>> code of the paper is available.
>>>
>>> Here are some results of "Poisson Image Editing": (To avoid a too big
>>> e-mail, I uploaded the result images to my flickr)
>>>
>>> results from the paper
>>>
>>> http://www.flickr.com/photos/zhjie/5567239315/in/photostream/
>>>
>>> http://www.flickr.com/photos/zhjie/5567823932/in/photostream/
>>>
>>> results got by the source code
>>>
>>> source picture:http://www.flickr.com/photos/zhjie/5566195587/in/photostream/
>>>
>>> maks picture:http://www.flickr.com/photos/zhjie/5567229627/
>>>
>>> target picture:http://www.flickr.com/photos/zhjie/5566195459/
>>>
>>> result picture:http://www.flickr.com/photos/zhjie/5566196159/in/photostream/
>>>
>>> Todor Georgiev, in his paper "Photoshop Healing Brush:a Tool for Seamless
>>> Cloning" , proposed that continuity at the boundary is not always
>>> sufficient. He said  if we  want higher quality, seamless fill in requires
>>> continuity of derivatives. He use a fourth order PDE(partial differential
>>> equation) for solving that. That is just the method used Photoshop as
>>> Healing Brush.
>>>
>>> Another paper "Poisson Matting", gives a approach called Poisson matting.
>>> As the matte is directly reconstructed from a continuous matte gradient
>>> field by solving Poisson equations using boundary information from a
>>> user-supplied trimap, the modified local result is seamlessly integrated
>>> into the final result. By interactively , people can manipulating the matte
>>> gradient field using a number of filtering tools until he or she is
>>> satisfied. This approach gives very good result especially in details such
>>> as hair.
>>>
>>> http://www.cse.cuhk.edu.hk/~leojia/all_project_webpages/Poisson%20matting/poisson_matting.html
>>>
>>> In "Coordinates for Instant Image Cloning", using the general framework of
>>> mean-value coordinates,  the authors presented a new approach for seamless
>>> cloning of images and video, stitching, and matting.
>>>
>>> http://www.cs.huji.ac.il/~danix/mvclone/
>>>
>>> Deliverables
>>>
>>> A clone tool to be able to remove quickly dusts, spots, and other
>>> unwanted artefact  from an image.
>>> Source code and the documentation.
>>>
>>> Timeline
>>>
>>> More than 40 hours is spent on the project every week. More details for
>>> timeline are as follows:
>>>
>>> This week-by-week timeline provides a rough guideline of how the project
>>> will be done.
>>>
>>> 3 -- 16 May
>>>
>>>  Discuss with the mentor and make a determine on the design of the
>>> interaction interface.
>>>
>>> Make a deeper understanding with related documents and papers.
>>>
>>> 17 -- 30 May
>>>
>>>  Test and document existing code more thoroughly. Familiarize with the code
>>> and do some optimization.
>>>
>>> 31 May -- 6 June
>>>
>>>  Familiar with digiKam source code  and get  the framework design of the
>>> process started. At the same time,  start with program  documents writing.
>>>
>>> 7 -- 20 June
>>>
>>> Determine algorithms used to do the seamless clone.  Use QT to write
>>> the interface.
>>>
>>> 21 -- 27 June
>>>
>>> Finish the functions that is respond to user actions.
>>>
>>> 28 June -- 11 July
>>>
>>> Test the logical of the respond to user actions, make it more reasonable and
>>> more friendly.
>>>
>>> 12 -- 25 July
>>>
>>> Finish the coding and program  documents.
>>>
>>> 26 July -- 1 August
>>>
>>> Test the hole project and the program documentation more thoroughly.
>>>
>>> 2 -- 16 August
>>>
>>> Further refine tests and documentation for the whole project.
>>>
>>> _______________________________________________
>>> Digikam-devel mailing list
>>> Digikam-devel at kde.org
>>> https://mail.kde.org/mailman/listinfo/digikam-devel
>>>
>>>
>>
>



More information about the Digikam-devel mailing list