After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 142711 - Selective gaussian blur filter is slow
Selective gaussian blur filter is slow
Status: RESOLVED FIXED
Product: GIMP
Classification: Other
Component: Plugins
git master
Other All
: Normal enhancement
: ---
Assigned To: GIMP Bugs
GIMP Bugs
Depends on:
Blocks: 141797
 
 
Reported: 2004-05-18 08:14 UTC by Maurits Rijk
Modified: 2006-06-02 11:55 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Maurits Rijk 2004-05-18 08:14:06 UTC
The selective gaussian blur filter is much slower than the other two guassian
blur filter (IIR, RLE). Main reason is that it fully applies a convolution
matrix instead of splitting it up in a horizontal and vertical pass. The matrix
is decomposable, so it should be possible.

Maybe it's also a good idea to merge this plug-in with the other two.
Comment 1 weskaggs 2004-05-18 15:51:45 UTC
Actually the convolution is *not* decomposable when it is applied selectively. 
Trying to do so can produce artifacts in certain situations -- see comment #39
for bug #93856 for an example of the kind of artifact you can get.  On the other
hand, because selective blurring only blurs things that are already
low-contrast, the artifacts will not in most cases be noticeable, so the loss in
mathematical validity may be compensated by the gain in speed.
Comment 2 Maurits Rijk 2004-05-19 10:59:16 UTC
Ok, I'm going to study on this one a bit more before I change anything. In the
meanwhile I made a few optimizations to the code (not the algorithm) and gained
about 75 % speed. On my old Athlon 750 on a 1000 x 1000 rgb image, time was
reduced from 27 to 15 seconds. Measured with CFLAGS="-O3 -march=athlon
-fomit-framepointer -pipe"
Comment 3 Sven Neumann 2004-05-24 14:18:49 UTC
It would probably not hurt to get these optimizations into CVS now.
Comment 4 Maurits Rijk 2004-05-24 15:47:19 UTC
2004-05-18  Maurits Rijk  <m.rijk@chello.nl>

        * plug-ins/common/sel_gauss.c: HIGified, fixed indendation, speed
        improvement (around 70 %).
Comment 5 Maurits Rijk 2004-05-26 12:01:27 UTC
Ok, since the convolution is not decomposable and there won't be much speed gain
by tweaking the code more, I'm closing this one. It's still slow as hell, but at
least it's almost twice as fast (more like half as slow) as the previous version.
Comment 6 Sven Neumann 2006-06-02 11:55:01 UTC
See bug #342860.