Re: [Gimp-developer] GSoC 2011 Porting GIMP plugins to GEGL operations

2011-03-29 Thread sourav de
On Tue, Mar 29, 2011 at 4:11 AM, Mukund Sivaraman m...@banu.com wrote:

 Hi Sourav

 On Tue, Mar 29, 2011 at 12:36:04AM +0530, sourav de wrote:
  Hi,
 
 I am a 2nd year student of the department of Computer Science and
  Engineering at Indian Institute of Technology, Kharagpur ,and  I am
  interested in the plugin for cartoonization of an image in GIMP.

 I gather you want to modify the cartoon plug-in in GIMP?

 The plug-in porting task that you have mentioned in the subject is to
 directly port GIMP plug-ins to GEGL ops.  No modification of
 functionality is necessary.  It is described here:


 http://gimp-wiki.who.ee/index.php?title=Hacking:GSoC_2011/Ideas#Porting_GIMP_plugins_to_GEGL_operations

 It is not a task of porting only 1 plug-in, but about 6-10 plug-ins per
 student.  1 plug-in is a very easy task and will not be sufficiently
 long for a full summer's work.

 To apply for this task, please present the items mentioned on the
 linked wiki page.

 

 However, if you wish to modify the cartoon plug-in, that sounds
 interesting too.  It can be a different task.  Can you describe what is
 lacking in the current approach in the GIMP plug-in?  What is the
 algorithm that you plan to use ?  You say you are doing a project on
 algorithmic art..  have you published anything on the methods you wish
 to use in this cartoon plug-in?  Are you using any other published
 works?

 Note that we _may_ accomodate more tasks if they are of a high quality
 and we are satisfied with how the student presents it.

Mukund


Thank you sir, for your comments, I'll come up with the presentation of
those plug-ins mentioned in the wiki page and algorithm for the
cartoonization plug-in soon.
And for the project on algorithmic art, I took this project in my
current semester, I'll have to take the course Computer Graphics in my next
semester to complete the project. So far I haven't yet publish any paper.

-- 
Sourav De
2nd Year Student
Department of Computer Science and Engineering
IIT KHARAGPUR
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


[Gimp-developer] GSoC Introduction

2011-03-29 Thread Ayush Goyal
Hi,

I am a 3rd year engineering student at Netaji Subhas Institute of
Technology,New Delhi. Although i am not a Computer Science student, my
interests lie in programming especially in the field of UI development.

So far i hv contributed some code for the Paint Activity in the Sugar
Desktop Environment for OLPC. This has given my some idea of working of a
GTK/GDK drawing Application.I hv implemented the patches for  the invert
color functionality and aspect ratio mode for selection tool using a
constraint key among some other work for the Paint Activity.

https://dev.laptop.org/attachment/ticket/3705/0001-Fixed-aspect-ratio-mode-for-Shape-tools-OLPC-3705.patch
http://dev.laptop.org/attachment/ticket/2495/0001-Added-Invert-Color-Effect-to-Paint-Activity-OLPC-249.patch

i can code both in C and Python. i want to implement the Unified
Transformation Tool for GIMP by participating in GSoC .I hv gone through
the specification of project. I think its a cool idea and i can picture it
how it will work as mentioned in the specs. I hv compiled the git and will
be looking for some easy bugs to fix to get started. If anyone can point me
where to start off, it would be a great help.I have already started learning
GTK+ in depth.

Regards,
Ayush
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] GIMP Developer Meeting #3 - March 28, 2011

2011-03-29 Thread LightningIsMyName
Hello,

no organized meeting log this time, for various reasons, however I'm
attaching below the list of decided actions in the meeting, along with
some other off-topic points that were discussed:

** GSoC Student Applications  **
Core developers sign up as mentors (for GSoC)
schumaml: Write mail about application is open, and required skills,
and required code example

** Re-Discussing GIMP's programming language **
For core (non-UI), continue using GObject, use code generators (such
as turbine) and do copy/paste/replace for existing GObject classes
(for the rare case where the generator won't be enough).
For UI, porting widgets to GtkBuilder is an option (and then we'll use
Glade and UI xml files), but any action on the UI is postponed until
we get 3.0 out!

** Default JPEG Quality (quickie, not a real topic) **
Change to 95 2x1, and add a hack to save defaults (using something
like the PNG plugin does, or something more elegant). Note that a
decent system to save plugin defaults, along with other api changes,
is not something that will happen for 2.8.

** bringing UI crew to LGM **
Will be discussed with mitch and schumaml on the financial aspect
(using gimp funds) when the team is fully assembled (parts of it are
already assembled - hurray for guiguru and congrats for the new team
memebers!)

** Resource management for 2.8 **
One member of the new UI team (lead by guiguru) will take care of that

** Offtopic **
Seems as if most GIMP team can't attend LGM this year, but there may
be a GIMP village in the Chaos Communication Camp
(http://events.ccc.de/2010/08/10/chaos-communication-camp-2011/) as
most developers want/plan to attend it.
UI team members will start hanging on IRC once the team is assembled.
Many developers suggested help in setting them up with build
environments and every other thing they need. This will happen soon,
so be nice to the new guys ;)

~LightningIsMyname
~LightningIsMyName
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] GIMP Developer Meeting #3 - March 28, 2011

2011-03-29 Thread Martin Nordholts
2011/3/29 LightningIsMyName lightningismyn...@gmail.com:
 ** Re-Discussing GIMP's programming language **
 For core (non-UI), continue using GObject, use code generators (such
 as turbine) and do copy/paste/replace for existing GObject classes
 (for the rare case where the generator won't be enough).

Hi,

Unfortunately I couldn't attend the meeting and affect the outcome of
the discussion, but I still want to comment on it:

GObject C boilerplate is a general productivity problem not bound to
any specific kind of code, it doesn't make sense to treat core and UI
code differently.

Regarding code generators: that's basically how we will use Vala, I
don't see why e.g. turbine would be better to use for this.

Regards,
Martin


--

My GIMP Blog:
http://www.chromecode.com/
Why GIMP 2.8 is not released yet
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] GIMP Developer Meeting #3 - March 28, 2011

2011-03-29 Thread Ville Pätsi
On 2011-03-29 14:09, LightningIsMyName wrote:
 ** Default JPEG Quality (quickie, not a real topic) **
 Change to 95 2x1, and add a hack to save defaults (using something
 like the PNG plugin does, or something more elegant). Note that a
 decent system to save plugin defaults, along with other api changes,
 is not something that will happen for 2.8.

So you set the quality slider to 95 to ensure files will be big, but set
sampling to 2x1 to ensure the image quality will be poor? I don't see
the sense in this.

Also the JPEG export plug-in has had a stored default for years. What
are you trying to add?

Note that if the source file is JPEG the plug-in offers similar settings
to the originating file by default. You can still click load defaults
to override it.

___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] GIMP Developer Meeting #3 - March 28, 2011

2011-03-29 Thread Michael Natterer
On 03/29/2011 02:45 PM, Martin Nordholts wrote:
 2011/3/29 LightningIsMyNamelightningismyn...@gmail.com:
 ** Re-Discussing GIMP's programming language **
 For core (non-UI), continue using GObject, use code generators (such
 as turbine) and do copy/paste/replace for existing GObject classes
 (for the rare case where the generator won't be enough).

 Hi,

 Unfortunately I couldn't attend the meeting and affect the outcome of
 the discussion, but I still want to comment on it:

 GObject C boilerplate is a general productivity problem not bound to
 any specific kind of code, it doesn't make sense to treat core and UI
 code differently.

Right, it doesn't make sense to make a difference here.
And the summary doesn't quite reflect the result of the discussion.

Regarding productivity: I don't know how you measure more productive
on a scale from zero to zero. There is simply not much contribution
currently, and blaming GObject for that is lame, and attempting a fix
where you earlier put the blame is activism. As I said before, let's
please work on our public interface, That maybe has the potential of
attracting new developers. I already gave the reasons why I think
adding another language won't.

 Regarding code generators: that's basically how we will use Vala, I
 don't see why e.g. turbine would be better to use for this.

Turbine is a comfortable replacement for:

- copy existing class with SameNumberOfWords
- do s/OldName/NewName/ and s/old_name/new_name/
- remove junk
- skeleton done

Vala is a programming language and *not* a code generator. You also
don't consider gcc a code generator because it has some internal
representation in between C and machine code.

ciao,
--Mitch
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


[Gimp-developer] Question about colour

2011-03-29 Thread Chris Moller
I did a little experiment last night, creating two rectangles, one  of 
hue = 240, saturation = 90%, and value = 90%, the other differing only 
in saturation, = 50%, i.e., reducing saturation by 40%.  Then, from the 
Hue/Lightness/Saturation dialogue, I increased the saturation of a 
selection in the less-saturated rectangle by 40, thinking the colours 
would then match.   They don't.  In fact, /no/ adjustment of saturation 
from that dialogue will make the colours match and, further, adjustment 
of the saturation also affects the colour value.  Adjusting colours that 
differ only in value (which I assume is the same as what's called 
lightness in the H/L/S dialogue) yields similarly unexpected results: 
it was possible, using value adjustment alone, to adjust a colour with 
an HSV triplet of [240 90 50] to [240 90 90], but only by increasing 
Lightness by 61 rather than the expected 40 (or perhaps the at least 
somewhat intuitive 80, the percentage increase of 90 over 50).

I confess I don't understand colour, but is my understanding even poorer 
than I thought?  Or is this an area in which GIMP needs a bit of work?

(The utterly prosaic background of this question is that my wife runs an 
eBay business for which I am the reluctant photographer.  Frequently, I 
take multiple pictures of the same object, under the same lighting, 
differing sometimes only in the distance of the object from the light.  
The resultant colours  in the photographs are frequently significantly 
different and I use  GIMP to try to make them match.  This is remarkably 
difficult to do and if I ever get the time I may undertake to write 
something for GIMP to make this easier.)  (And I won't even comment on 
the near-impossibility of getting the image colours to perceptually 
match the in situ colours...)
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Question about colour

2011-03-29 Thread Rob Antonishen
 I confess I don't understand colour, but is my understanding even poorer
 than I thought?  Or is this an area in which GIMP needs a bit of work?

I don't think HSV and HSL are the same colourspace:
http://en.wikipedia.org/wiki/HSL_and_HSV

 Frequently, I
 take multiple pictures of the same object, under the same lighting,
 differing sometimes only in the distance of the object from the light.
 The resultant colours  in the photographs are frequently significantly
 different and I use  GIMP to try to make them match.  This is remarkably
 difficult to do and if I ever get the time I may undertake to write
 something for GIMP to make this easier.)

You can try my histogram match script:

http://ffaat.pointclark.net/blog/archives/162-Gimp-Script-Histogram-Match.html

-Rob A
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] Question about colour

2011-03-29 Thread jcupitt
Hi Chris,

On 29 March 2011 16:28, Chris Moller mol...@mollerware.com wrote:
 (The utterly prosaic background of this question is that my wife runs an
 eBay business for which I am the reluctant photographer.  Frequently, I
 take multiple pictures of the same object, under the same lighting,
 differing sometimes only in the distance of the object from the light.
 The resultant colours  in the photographs are frequently significantly
 different and I use  GIMP to try to make them match.  This is remarkably
 difficult to do and if I ever get the time I may undertake to write
 something for GIMP to make this easier.)  (And I won't even comment on
 the near-impossibility of getting the image colours to perceptually
 match the in situ colours...)

I've actually done some work on this. My package (only tangentially
related to gimp) includes a colour calibration button, there's a
description of the process on the website:

http://www.vips.ecs.soton.ac.uk/index.php?title=Colour_calibration_with_nip2

The idea is that you take a photo including a colour standard (I use
the Macbeth). Then select the chart in the photo and click calibrate
to have it calculate a transform from your camera colour to sRGB. You
can then use that transform to colour-correct other images.

Macbeth have a mini macbeth now that has the same colour patches,
but is a much more reasonable size.

John
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] GIMP Developer Meeting #3 - March 28, 2011

2011-03-29 Thread Alexandre Prokoudine
On 3/29/11, Michael Natterer wrote:

 As I said before, let's please work on our public interface

Let's try to outline what exactly needs doing, eh? :)

The new website is stuck in the middle mostly because AFAIK Jimmac was
busy all the time with GNOME 3 which is finally soon to be out, so
maybe Jakub will have more spare time to finish this now.

The wiki transition seems to be stuck as well. What exactly has to be done?

The news is what I already take care of.

What else has to be done apart from that?

Alexandre Prokoudine
http://libregraphicsworld.org
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] GSOC 2011 - GEGL: Make OpenGL branch use OpenCL

2011-03-29 Thread Øyvind Kolås
On Sun, Mar 27, 2011 at 8:08 PM, Victor Oliveira
victormath...@gmail.com wrote:
 Hello everyone. My name is Victor Oliveira. I'm a master's student at
 the School of Electrical and Computer Engineering - University of
 Campinas, Brazil.

 I work with Image Processing and Machine Learning and I've been using
 GPUs (CUDA) in my work since 2009. More recently, we've migrated our
 projects to OpenCL, which has given me more experience with GPU
 programming. I have a strong background in C/C++ and Python.

 Also, I've been using GEGL for some time in my projects. I noticed a
 while ago that there is a branch
 [http://git.gnome.org/browse/gegl/tree?h=gsoc2009-gpu] that wasn't
 merged in GEGL's main tree.

 If I understood it correctly, this specific branch is able to do
 pixelwise operations using OpenGL shaders and automatic memory
 management beetween the cpu and gpu. My idea is to use this memory
 management scheme to allow gegl operations with OpenCL. I've already
 presented this idea in #gegl without further details and I'd like to
 discuss it here.

If moving to OpenCL, (and if OpenCL needs separately managed memory;
which I think it does) basing it on the existing unmerged GPU branch
would be the best plan moving forward. The general gist of the work
that was done in the previous gsoc was to extend GeglBuffer with the
ability to have a separate, internal backend/cache of gpu side tiles,
that have their own revision; when tiles are requested either on the
gpu or cpu side, migration is done automatically to ensure that the
newest version is used.

This management scheme was succesfully implemented for GLSL based
shaders and proof of concept implementations of some point operations
were done. Repeating the things that were done in this gsoc for OpenCL
should not take as long as it did for the original GPU branch since a
lot of the issues would already be solved. If core color correction,
compositing ops and gaussian blur have vfuncs for GPU side processing;
many simpler compositions would be possible to do fully on the GPU -
while compositions with some cpu based ops would do the migration back
and forth as needed (with incurred performance impact).

Another important issue when implementing a new set of vfunc for the
OpenCL code (which would have to be fully conditional at compile time,
to keep GEGL buildable without).

One thing that could be interesting to do is to make it possible to
turn on a runtime flag that tests the OpenCL paths against the cpu
paths when running GEGLs test suite, thus ensuring that the results
are really interchangeable.

 The first step would be adapting the existing code and re-implementing
 the pixelwise operations in OpenCL. Meanwhile, we have to remember
 that OpenCL can be compiled to run in the cpu also, so we don't need
 to make memory transfers in this case.

I do not know enough details about OpenCL and its data buffers to
asses how this best would be done. Though it would be interesting to
see how the code generated compares with the existing cpu code; if
fully free software toolchains for OpenCL (perhaps using LLVM)
emerges, it could be interesting to use OpenCL as the officially
encouraged way of implementing GEGL ops.

/Øyvind K - GEGL maintainer
-- 
«The future is already here. It's just not very evenly distributed»
                                                 -- William Gibson
http://pippin.gimp.org/                            http://ffii.org/
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] GIMP Developer Meeting #3 - March 28, 2011

2011-03-29 Thread Michael Natterer
On 03/29/2011 06:54 PM, Alexandre Prokoudine wrote:
 On 3/29/11, Michael Natterer wrote:

 As I said before, let's please work on our public interface

 Let's try to outline what exactly needs doing, eh? :)

- Website updates
- News
- Wiki
- Blogs
- Maybe we should have a GIMP blog aggregator?
- More frequent developer releases (my fault, I know)

 The new website is stuck in the middle mostly because AFAIK Jimmac was
 busy all the time with GNOME 3 which is finally soon to be out, so
 maybe Jakub will have more spare time to finish this now.

I think Jimmac is pretty busy, so maybe somebody should pick up the
work. Also, I don't think we absolutely need a new website, just
a few people who can trigger website updates after something has
been pushed to git, at least as long as auto-updates are broken.
I'll poke Sven about that.

 The wiki transition seems to be stuck as well. What exactly has to be done?

I'm in contact with Shawn, and the DNS entry should point to
Alexia's wiki soon.

 The news is what I already take care of.

That much appreciated :)

 What else has to be done apart from that?

Whatever people are capable and wanting to do :) Everybody
involved with the project is invited to join the effort.

ciao,
--Mitch
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] GIMP Developer Meeting #3 - March 28, 2011

2011-03-29 Thread Alexandre Prokoudine
On 3/29/11, Michael Natterer wrote:

 On 03/29/2011 06:54 PM, Alexandre Prokoudine wrote:
 On 3/29/11, Michael Natterer wrote:

 As I said before, let's please work on our public interface

 Let's try to outline what exactly needs doing, eh? :)

 - Website updates

I think I could add recent books, including the one from Packt.

 - News
 - Wiki

Discussed above and below

 - Blogs
 - Maybe we should have a GIMP blog aggregator?

We used to have layers.gimp.org exactly for that, but it's gone. I
think we can reuse infrastructure from graphicsplanet.org that Mukund
and me maintain. Any suggestions on URL? Maybe simply blogs.gimp.org?

 - More frequent developer releases (my fault, I know)

Since you insist :D

 The new website is stuck in the middle mostly because AFAIK Jimmac was
 busy all the time with GNOME 3 which is finally soon to be out, so
 maybe Jakub will have more spare time to finish this now.

 I think Jimmac is pretty busy, so maybe somebody should pick up the
 work. Also, I don't think we absolutely need a new website, just
 a few people who can trigger website updates after something has
 been pushed to git, at least as long as auto-updates are broken.
 I'll poke Sven about that.

Can't this be automated?

 The wiki transition seems to be stuck as well. What exactly has to be
 done?

 I'm in contact with Shawn, and the DNS entry should point to
 Alexia's wiki soon.

Cool

Alexandre Prokoudine
http://libregraphicsworld.org
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] GSOC 2011 - GEGL: Make OpenGL branch use OpenCL

2011-03-29 Thread Victor Oliveira
On Tue, Mar 29, 2011 at 2:36 PM, Øyvind Kolås pip...@gimp.org wrote:
 On Sun, Mar 27, 2011 at 8:08 PM, Victor Oliveira
 victormath...@gmail.com wrote:
 Hello everyone. My name is Victor Oliveira. I'm a master's student at
 the School of Electrical and Computer Engineering - University of
 Campinas, Brazil.

 I work with Image Processing and Machine Learning and I've been using
 GPUs (CUDA) in my work since 2009. More recently, we've migrated our
 projects to OpenCL, which has given me more experience with GPU
 programming. I have a strong background in C/C++ and Python.

 Also, I've been using GEGL for some time in my projects. I noticed a
 while ago that there is a branch
 [http://git.gnome.org/browse/gegl/tree?h=gsoc2009-gpu] that wasn't
 merged in GEGL's main tree.

 If I understood it correctly, this specific branch is able to do
 pixelwise operations using OpenGL shaders and automatic memory
 management beetween the cpu and gpu. My idea is to use this memory
 management scheme to allow gegl operations with OpenCL. I've already
 presented this idea in #gegl without further details and I'd like to
 discuss it here.

 If moving to OpenCL, (and if OpenCL needs separately managed memory;
 which I think it does) basing it on the existing unmerged GPU branch
 would be the best plan moving forward. The general gist of the work
 that was done in the previous gsoc was to extend GeglBuffer with the
 ability to have a separate, internal backend/cache of gpu side tiles,
 that have their own revision; when tiles are requested either on the
 gpu or cpu side, migration is done automatically to ensure that the
 newest version is used.

 This management scheme was succesfully implemented for GLSL based
 shaders and proof of concept implementations of some point operations
 were done. Repeating the things that were done in this gsoc for OpenCL
 should not take as long as it did for the original GPU branch since a
 lot of the issues would already be solved. If core color correction,
 compositing ops and gaussian blur have vfuncs for GPU side processing;
 many simpler compositions would be possible to do fully on the GPU -
 while compositions with some cpu based ops would do the migration back
 and forth as needed (with incurred performance impact).

 Another important issue when implementing a new set of vfunc for the
 OpenCL code (which would have to be fully conditional at compile time,
 to keep GEGL buildable without).

 One thing that could be interesting to do is to make it possible to
 turn on a runtime flag that tests the OpenCL paths against the cpu
 paths when running GEGLs test suite, thus ensuring that the results
 are really interchangeable.


Maybe we can also use this to benchmark plug-ins and see if the
speedup of using OpenCL is greater than the overhead during buffer
migrations.

 The first step would be adapting the existing code and re-implementing
 the pixelwise operations in OpenCL. Meanwhile, we have to remember
 that OpenCL can be compiled to run in the cpu also, so we don't need
 to make memory transfers in this case.

 I do not know enough details about OpenCL and its data buffers to
 asses how this best would be done. Though it would be interesting to
 see how the code generated compares with the existing cpu code; if
 fully free software toolchains for OpenCL (perhaps using LLVM)
 emerges, it could be interesting to use OpenCL as the officially
 encouraged way of implementing GEGL ops.


This is a nice topic. A (sufficient smart :) compiler probably is able
to generate optimized code for OpenCL in an easier way than C. OpenCL
language is naturally data-parallel, which allows vector instructions,
for example.

So what are the next steps then? Do i have to write a more formal proposal?

 /Øyvind K - GEGL maintainer
 --
 «The future is already here. It's just not very evenly distributed»
                                                  -- William Gibson
 http://pippin.gimp.org/                            http://ffii.org/

___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] GSoC 2011 Porting GIMP plugins to GEGL operations

2011-03-29 Thread sourav de
On Tue, Mar 29, 2011 at 1:15 PM, sourav de souravde1...@gmail.com wrote:



 On Tue, Mar 29, 2011 at 4:11 AM, Mukund Sivaraman m...@banu.com wrote:

 Hi Sourav

 On Tue, Mar 29, 2011 at 12:36:04AM +0530, sourav de wrote:
  Hi,
 
 I am a 2nd year student of the department of Computer Science and
  Engineering at Indian Institute of Technology, Kharagpur ,and  I am
  interested in the plugin for cartoonization of an image in GIMP.

 I gather you want to modify the cartoon plug-in in GIMP?

 The plug-in porting task that you have mentioned in the subject is to
 directly port GIMP plug-ins to GEGL ops.  No modification of
 functionality is necessary.  It is described here:


 http://gimp-wiki.who.ee/index.php?title=Hacking:GSoC_2011/Ideas#Porting_GIMP_plugins_to_GEGL_operations

 It is not a task of porting only 1 plug-in, but about 6-10 plug-ins per
 student.  1 plug-in is a very easy task and will not be sufficiently
 long for a full summer's work.

 To apply for this task, please present the items mentioned on the
 linked wiki page.

 

 However, if you wish to modify the cartoon plug-in, that sounds
 interesting too.  It can be a different task.  Can you describe what is
 lacking in the current approach in the GIMP plug-in?  What is the
 algorithm that you plan to use ?  You say you are doing a project on
 algorithmic art..  have you published anything on the methods you wish
 to use in this cartoon plug-in?  Are you using any other published
 works?

 Note that we _may_ accomodate more tasks if they are of a high quality
 and we are satisfied with how the student presents it.

Mukund


 Thank you sir, for your comments, I'll come up with the presentation of
 those plug-ins mentioned in the wiki page and algorithm for the
 cartoonization plug-in soon.
 And for the project on algorithmic art, I took this project in my
 current semester, I'll have to take the course Computer Graphics in my next
 semester to complete the project. So far I haven't yet publish any paper.


 --
 Sourav De
 2nd Year Student
 Department of Computer Science and Engineering
 IIT KHARAGPUR


   I wrote the code review for gaussian blur as it given here

   http://git.gnome.org/browse/gegl/tree/operations/common/gaussian-blur.c


   But I'm not familiar with writing code review and algorithmic
description. Here goes my code review.


---code review starts here

Gaussian blur operation code review:

1. function-1 : static void iir_young_find_constants (gfloat  sigma,gdouble
*B,gdouble *b)

a. the variable sigma is to avoid unexpected ringing at tile boundaries of
an image.
b. there exists a variable q, whose value must be remained in between 0 -
1.5, and according to the value of sigma there are two procedures to
calculate the value of q.
c. lastly it sets the value of the variables b[0] to b[3] and B, and then
returns.

2. function-2 : static inline void iir_young_blur_1D (gfloat  * buf,gint
offset,gint delta_offset,gdouble B,gdouble *b,gfloat  * w,gint w_len)

a. this function blurrifies an image one dimensionally.
b. wlen is the length of the 1d array w passed.
c. here an image would be blurrified in two steps, applying forward and
backward filter for each pixel, a local variable wcount counts the number of
pixels each time.
d. the filter would be applied to the image according to the passed array w.


3. function-3 : static void iir_young_hor_blur (GeglBuffer *src,const
GeglRectangle *src_rect,GeglBuffer *dst,const GeglRectangle
*dst_rect,gdouble  B,gdouble *b)

a. this function blurrifies an image horizontally.
b. first it creates an one dimensional array buf whose length is
height*width*4, where height and width is height and width of the source
image rectangle.
c. then it creates another one dimensional array w with the length of the
width of the source image.
d. after then it fills the values of buf array according to the source image
in RaGaBaA format.
e. then it applies the iir_young_blur_1D function to the newly generated
ractangles.
f. lastly it stores the change in a destination array and returns.

4. function-4 : static void iir_young_ver_blur (GeglBuffer *src,const
GeglRectangle *src_rect,GeglBuffer *dst,const GeglRectangle
*dst_rect,gdouble  B, gdouble *b)

a. this function blurrifies an image vertically.
b. first it creates an one dimensional array buf whose length is
height*width*4, where height and width is height and width of the source
image rectangle.
c. then it creates another one dimensional array w with the length of the
height of the source image.
d. after then it fills the values of buf array according to the source image
in RaGaBaA format.
e. then it applies the iir_young_blur_1D function to the newly generated
ractangles.
f. lastly it stores the change in a destination array and returns.

5. function-5 : static gint fir_calc_convolve_matrix_length (gdouble sigma)

a. depending upon the value of sigma it returns an integer which partially
determines the width and height of the 

[Gimp-developer] GSOC 2011 - EXIF data viewer and editor

2011-03-29 Thread Cameron Christiansen
Hi, I'm Noremac. I'm currently a CS grad student at BYU working in the image
processing lab here on campus. My thesis is going to be focused on
extracting information (OCR) from non-document images. I worked in the
corporate world for a few years before coming back to get my masters. I've
been wanting to get involved with GIMP and this seems to be a good time to
do it.

For my project I propose creating an EXIF/xmp viewer/editor. I feel that
this would be very beneficial as I once struggled to find something such as
the geotagging information. All I have now is a command line program (exif)
or a library to get the info in code (libexif). An easy interface integrated
into an image editing application makes sense. This information is becoming
much more common as well due to the increasing popularity of mobile devices
with cameras. The current solutions I've found are not intuitive and really
not available to the common user.

I am very interested in feedback  on this since I'm coming in new to GIMP.
Of course, I'm also interested in a mentor.

I originally had been considering proposing a project in regards to computer
vision (along the lines of my thesis). If the previous proposal falls though
I wish to propose a project for a GEGL plugin to extract text from an image.
Thoughts on this?

Thanks,
Noremac
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] GIMP Developer Meeting #3 - March 28, 2011

2011-03-29 Thread gespert...@gmail.com
 On 2011-03-29 14:09, LightningIsMyName wrote:
 ** Default JPEG Quality (quickie, not a real topic) **
 Change to 95 2x1, and add a hack to save defaults (using something
 like the PNG plugin does, or something more elegant). Note that a
 decent system to save plugin defaults, along with other api changes,
 is not something that will happen for 2.8.

 So you set the quality slider to 95 to ensure files will be big, but set
 sampling to 2x1 to ensure the image quality will be poor? I don't see
 the sense in this.

 Also the JPEG export plug-in has had a stored default for years. What
 are you trying to add?

 Note that if the source file is JPEG the plug-in offers similar settings
 to the originating file by default. You can still click load defaults
 to override it.

I did a couple of quick tests with an image with photos and design
elements (type and areas with solid fill) and I got better results
both in overall quality and file size using 1x1 and smaller quality
factors than using worse subsampling and higher quality factors.
In my test the best relationship between quality and filesize was
using quality=92, subsampling=1x1 and floating point for the DCT
method.
The resulting file was smaller than the ones I exported with quality
set in 95 and 2x1 or 2x2 for subsampling.
with 1x1 subsampling and quality set in 90 the edge artifacts in type
and solid fill areas became visible but the edges were sharp as in the
original. The photo didn't show any noticeable compression artifacts.
That's completely different with 2x1 and 2x2 subsamplings. All the
edges became softer and when the quality factor is high enough to
avoid compression artifacts the resulting file is larger than when 1x1
was used.
So I'd suggest a different default quality setting for jpg: 92 / 1x1 /
floating point.
If file size matters (the size gain isn't too significative, but
still), a quality factor of 90 will still give considerably better
quality than the current defaults.

and add a hack to save defaults (using something
 like the PNG plugin does, or something more elegant)

I don't understand what's missing in the current implementation. I
could change my defaults and store the new configuration as default
through the advanced options of the jpeg export plugin (in 2.6.x)
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] GSOC 2011 - EXIF data viewer and editor

2011-03-29 Thread Alexandre Prokoudine
On 3/30/11, Cameron Christiansen wrote:

 For my project I propose creating an EXIF/xmp viewer/editor.

http://git.gnome.org/browse/gimp/tree/plug-ins/metadata/

Alexandre Prokoudine
http://libregraphicsworld.org
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] [Gegl-developer] GSOC 2011 - GEGL: Make OpenGL branch use OpenCL

2011-03-29 Thread Alexandre Prokoudine
On 3/29/11, Øyvind Kolås wrote:

 Another important issue when implementing a new set of vfunc for the
 OpenCL code (which would have to be fully conditional at compile time,
 to keep GEGL buildable without).

As much as I like OpenCL, this part of implementation is going to be
hairy, because to build an app that uses OpenCL one needs binary ATi
drivers, binary NVidia drivers or Gallium 3D. Or you would have to
keep a local copy of respective headers (or write your own ones). You
can imagine the kind of fun that packagers will have.

Alexandre Prokoudine
http://libregraphicsworld.org
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] [Gegl-developer] GSOC 2011 - GEGL: Make OpenGL branch use OpenCL

2011-03-29 Thread Victor Oliveira
Hi! This is a question I haven't though.

Well, I think your second option is feasible. OpenCL headers are
freely (as in freedom) distributed in the khronos group page
(http://www.khronos.org/registry/cl/). We just have to hope vendors
follow this specification.
Of course, we still need proprietary drivers (libOpenCL.so) in the
runtime until there is an open-source implementation. But I don't know
if this is a problem.

bye!

On Tue, Mar 29, 2011 at 6:33 PM, Alexandre Prokoudine
alexandre.prokoud...@gmail.com wrote:
 On 3/29/11, Øyvind Kolås wrote:

 Another important issue when implementing a new set of vfunc for the
 OpenCL code (which would have to be fully conditional at compile time,
 to keep GEGL buildable without).

 As much as I like OpenCL, this part of implementation is going to be
 hairy, because to build an app that uses OpenCL one needs binary ATi
 drivers, binary NVidia drivers or Gallium 3D. Or you would have to
 keep a local copy of respective headers (or write your own ones). You
 can imagine the kind of fun that packagers will have.

 Alexandre Prokoudine
 http://libregraphicsworld.org
 ___
 Gimp-developer mailing list
 Gimp-developer@lists.XCF.Berkeley.EDU
 https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer

___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


[Gimp-developer] gegl build fails

2011-03-29 Thread Michael J. Hammel
I've been having some problems building from git recently.  Today I
tried to figure out why.  I use simple scripts to update the trees and
then build them.  BABL builds fine.  GEGL fails here:

make[3]: Entering directory
`/home/mjhammel/src/graphics/gimp/git/gegl/gegl'
  CC gegl-c.lo
  CC gegl-config.lo
  CC gegl-cpuaccel.lo
  CC gegl-dot.lo
  CC gegl-dot-visitor.lo
  CC gegl-init.lo
  CC gegl-instrument.lo
  CC gegl-utils.lo
  CC gegl-lookup.lo
  CC gegl-xml.lo
  CC gegl-matrix.lo
  CCLD   libgegl-0.1.la
  GISCAN Gegl-0.1.gir
Couldn't find include 'Babl-0.1.gir' (search path: ['.',
'/usr/share/gir-1.0', '/usr/share/gir-1.0', '/usr/share/gir-1.0'])
make[3]: *** [Gegl-0.1.gir] Error 1


The commands to build it were as follows:
export LD_LIBRARY_PATH=/usr/local/gimpgit/lib:$LD_LIBRARY_PATH
export PKG_CONFIG_PATH=/usr/local/gimpgit/lib/pkgconfig/:
$PKG_CONFIG_PATH
./autogen.sh -prefix=/usr/local/gimpgit
make

These are the same command used to build BABL.  The missing file is in
the proper place:
mjhammel(tty6)$ find /usr/local/gimpgit -name Babl-0.1.gir
/usr/local/gimpgit/share/gir-1.0/Babl-0.1.gir

Am I missing something new related to building GEGL from git?  Seems I'm
not telling GEGL about the install dir correctly.

Thanks.
-- 
Michael J. Hammel mjham...@graphics-muse.org

___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer


Re: [Gimp-developer] gegl build fails

2011-03-29 Thread Mukund Sivaraman
On Tue, Mar 29, 2011 at 09:21:28PM -0600, Michael J. Hammel wrote:
 The commands to build it were as follows:
 export LD_LIBRARY_PATH=/usr/local/gimpgit/lib:$LD_LIBRARY_PATH
 export PKG_CONFIG_PATH=/usr/local/gimpgit/lib/pkgconfig/:

export XDG_DATA_DIRS=/usr/local/gimpgit/share/

Mukund


pgpnZyIiZlnia.pgp
Description: PGP signature
___
Gimp-developer mailing list
Gimp-developer@lists.XCF.Berkeley.EDU
https://lists.XCF.Berkeley.EDU/mailman/listinfo/gimp-developer