ImageEn for Delphi and C++ Builder ImageEn for Delphi and C++ Builder

 

ImageEn Forum
Profile    Join    Active Topics    Forum FAQ    Search this forumSearch
Forum membership is Free!  Click Join to sign-up
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 ImageEn Library for Delphi, C++ and .Net
 ImageEn and IEvolution Support Forum
 Missing library in C++
 New Topic  Reply to Topic
Author Previous Topic Topic Next Topic  

spetric

Croatia
308 Posts

Posted - Jan 19 2016 :  15:25:19  Show Profile  Reply
Hi,

This is my first attempt to build 64-bit app. with imageen.
However, as 64-bit compiler in XE5 is CLANG-type compiler it requires ELF libraries with extension A, and I can not find PKIECTRL19.A in DelphiXE5_64 folder.

Please advise.
TIA,
Siniša

xequte

38608 Posts

Posted - Jan 19 2016 :  18:33:30  Show Profile  Reply
Hi Siniša

What is the specific error message that you get?

Nigel
Xequte Software
www.xequte.com
nigel@xequte.com
Go to Top of Page

spetric

Croatia
308 Posts

Posted - Jan 20 2016 :  02:54:29  Show Profile  Reply
Hi Nigel,

Here is an error:



and in output, ilink64 reports error: Unable to open file 'PKIECTRL19.A'

Edit: There is also a bunch of "*.o" files missing (IEOPENSAVEDLG.O).

The problem is that I don't have full IDE installation (only C++ XE5) and I can not compile dpk projects.

Go to Top of Page

spetric

Croatia
308 Posts

Posted - Jan 23 2016 :  15:37:29  Show Profile  Reply
I forgot,

ImageEn version is 5.2.0. and if someone has 64-bit C++ libraries, please let me know.
I need it to "connect" Intel's IPP library (community licence) with ImageEn.

IPP 32-bit version works fine (libraries converted to OMF), but I wanna try with 64-bit ImageEn. I've converted 64-bit IPP libraries to ELF format and everything works fine, except that I can not perform image sharing between IPP and ImageEn.

TIA,
Siniša

BTW: I'm also working on a new algorithm for image inpainting (image completion/content aware filling) and
it works really fast. I'm not yet finished (strength map not implemented), but soon as I complete the work, I'll publish the paper on the algorithm and post the demo with full source code.

Here is very rough example, without strength map (similar to grow-cut algorithm) and without some other stuff I need to implement:

Original image:



Inpainted (I did not measure the time, but it's less then a second):

Go to Top of Page

xequte

38608 Posts

Posted - Jan 25 2016 :  18:54:26  Show Profile  Reply
Hi Sinisa

Your inpainting looks cool. I will be interested to compare the results with the Inpainting method in IEVision.



Nigel
Xequte Software
www.xequte.com
nigel@xequte.com
Go to Top of Page

spetric

Croatia
308 Posts

Posted - Jan 26 2016 :  16:09:01  Show Profile  Reply
Hi Nigel,

I have tried IEVison inpainting (demo) and it looks like "Navier-Stokes inpainting" algorithm which is also a part of IPP library. The algorithm is very good for healing, i.e. removing damaged parts of image or removing text from image, etc.., but it's not suitable for removing big parts of an image.

Currently, the state of the art methods are PatchMatch algorithm (used by Adobe) and "Statistics of Patch Offsets for Image Completion" (Microsoft Research Asia).

There are source codes on GitHub for both algorithms and I have partially implemented the first one, but then came to idea to make a "personal" approach to this topic. Lot of work ahead...

There are images that are very easy to fill/inpaint (removing people from the beach, objects on the grass and similar "highly-textured" backgrounds), but these situations are very nasty for content-filling:



and this is the result, without final phase (smoothing artifacts using strength map). You may notice some isolated pixels:



However, currently my first concern is to get 64-bit ImageEn working.

Go to Top of Page

xequte

38608 Posts

Posted - Jan 28 2016 :  18:30:22  Show Profile  Reply
Hi

Nice work, Sinisa. I'm interested to see how your project progresses.

Next week's release will include all the missing files. Please email me after it is out.

Nigel
Xequte Software
www.xequte.com
nigel@xequte.com
Go to Top of Page

spetric

Croatia
308 Posts

Posted - Feb 04 2016 :  17:12:59  Show Profile  Reply
Thanks Nigel.

Regarding image completion/inpainting, project is almost finished. I need to get rid of some minor bugs, write some kind of read-me file and I'll post it with full source code (probably next week).

If I grab some time, I'll add a possibility of manual source point retargeting (preferred source domain), but I'm not sure.

Here is another tricky example and it worked quite well.
Original image:



Inpainted:

Go to Top of Page

xequte

38608 Posts

Posted - Feb 17 2016 :  19:24:54  Show Profile  Reply
Impressive!

Nigel
Xequte Software
www.xequte.com
nigel@xequte.com
Go to Top of Page

spetric

Croatia
308 Posts

Posted - Feb 18 2016 :  03:29:00  Show Profile  Reply
Yes, a method sometimes gives very pleasant result, but in general, system requires lot of manual tweaking. The next step is to automatically chose target/source seeding points depending on surrounding background and get rid off all those parameters.

Regarding missing libraries, now everything is fine and I have successfully "connected" Intel's IPP surface with TIEBitmap, both in 32 and 64 bit test app.

So, anyone who wants to exploit Intel's IPP possibilities (freely available through community license) together with Ien, please let me know. IPP API headers can be converted to Delphi...the same way it were converted in old IPL library...hopefully.

I have also tested Nvidia NPP library, it compiles and links, but stays silent. Too much hacking is required to make it work with bcc, so I gave up. With IPP, making it work with bcc was "straight forward" procedure: coff2omf for 32-bit libraries and mkexp for 64-bit libraries.


Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
Jump To: