|
-
Mar 30th, 2015, 06:47 PM
#11
Re: Program Testers
 Originally Posted by reexre
I would appreciated your contribute, that for sure would be very usefull ( times ago I look at your Photodeamon - really great) but I am not going to open-sourcing... .. at least for now.
Okay, no problem. I will try to guess at implementation details, to hopefully provide useful advice.
First off, this is a really impressive project. It reminds me a lot of DAWs, with the concept of a "chart" layout, and connecting nodes between operations. I think it is a really promising approach, with many neat possibilities.
Unfortunately, I think there are two serious problems with the program's current state.
1) Interface
I noticed a lot of strange issues with the interface. For example, when working with wallpaper-sized images, the image preview would constantly "jump" to the foreground. Sometimes, clicking on the tool option box (which appears after clicking an effect node) doesn't work. I think the form in the top-right is stealing focus or something. The options window doesn't appear to be movable, so this makes it really hard to use.
Then there are little oddities like every item in the Input drop-down box being highlighted (???).
I also can't figure out a way to delete unneeded nodes. I tried right-clicking, backspace/delete, and a whole bunch of other interactions. No luck.
The help PDF did explain how to remove connecting lines, thankfully. It would be very nice to be able to click anywhere on a line to access it, instead of just the ends (as the ends are close together and difficult to target).
Anyway, these kinds of little things can take a lot of energy to address, but in my experience, these little "papercut" issues can drive users crazy.
2) Performance
To be honest, performance is pretty poor right now, especially if working on anything larger than about 0.5 megapixels. The program is more or less unusable on photographs, unless maybe you leave it to run overnight.
But don't lose hope! VB may be old, but we can coax a lot of performance out of it. You just have to be willing to read a lot of research papers and brush up on all your math skills. 
Here are some quick comparison timings, using a 1920x1200 JPEG, and a single effect, applied to each RGB channel (so just three nodes: Input > Effect > Output). I also tried to stop the timer before saving the image file, so only the effect is counted:
Bilateral smoothing, radius 9, single iteration
- Photo Modular (pure VB, I assume): 197.0 seconds
- PhotoDemon (pure VB, using Effects > Noise > Remove Noise which is really bilateral smoothing): 2.0 seconds
- GIMP (C, Blur > Selective Blur which is the closest thing they offer to bilateral smoothing): 3.0 seconds
I include PhotoDemon not because it's particularly good (PhotoShop is much faster, unfortunately), but to let you know that VB is still okay for tasks like this. Bilateral smoothing seems like a particularly important tool to optimize in PMFX, because it is iterated multiple times (multipass) for some effects.
Next, let's look at something simple like Gaussian Blur. Since it's an easier function, let's test a slightly larger radius (25 px):
- Photo Modular (pure VB, I assume): 128.0 seconds
- PhotoDemon (pure VB): 1.1 seconds (iterative box blur), 1.6 seconds (IIR), 3.2 seconds (true Gaussian)
- GIMP (C): 0.5 seconds (IIR or RLE, both are very fast)
- Paint.NET (C#): 1.5 seconds
I often use GIMP and Paint.NET as my benchmark, since they represent standard performance for free photo editors. For PMFX to be in the neighborhood of those programs, it needs to be about 100x faster. I don't think this is too hard (and maybe Cairo/vbRichClient can speed up functions even more), but it's difficult to give specific advice without knowing how you've implemented your features.
Anyway, I know it is frustrating to hear things like "performance must be better," but don't lose hope. Even small fixes can sometimes make huge improvements. I also think better performance would make it easier for people to appreciate all the things your software can do.
If you'd like help or resources on any particular operation, let me know, and I'd be happy to go into more detail.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|