Hi Kunal,<div><br></div><div>If you wish to use GPGPU, OpenCL is the right choice over CUDA. CUDA's API is not only proprietary, it also is specifically for nVidia hardware. OpenCL is good in this sense. If you have an nVidia card, it seems that OpenCL will internally use CUDA, therefore OpenCL will work on all users' computers.</div>
<div><br></div><div>However, I'm not sure, but there seems to be a small problem with adoption : <a href="http://www.khronos.org/opencl/adopters/">http://www.khronos.org/opencl/adopters/</a></div><div>There are some weird conditions regarding publishable usage that I'm not entirely sure about - it seems that you must gain some sort of approval and pass some tests before you are allowed to say that you used OpenCL in digiKam. If one doesn't want to publish his/her code, but keep it for personal/closed usage, then you don't have to pay royalty.<br>
Please correct me if I'm wrong, since this seems free as in speech/usage, but not free as in beer - there are some royalty issues if you don't pass the conformance tests.</div><div><br></div><div>As a side note - I had a talk with Alex about using EBGM a few days ago, and we decided not to use it for the moment. We don't have anything against the algorithm, it's just that if only I did it, there won't be enough time to implement all the algorithms and also complete the tagging part within the GSoC period. We definitely want to have eigenface and fisherface, despite the limitations - the retraining is slow only if there are more than ~400 tagged friends in the database, which is a rarity. The main concern is pose variation - for that, I plan to link multiple poses of the same person with the same ID. As a consequence, the initial accuracy while training shall be less, but after some time it would be good enough.</div>
<div><br></div><div>But still, if you can implement EBGM for libface, it'd be great :) We'd have one more algorithm in the bag. It's just that one person can't finish everything in time. So since you're willing, start EBGM then. Eigenfaces is almost complete.</div>
<div><br></div><div>PS: Hopefully someone will figure out if OpenCL can be used in digiKam or not.</div><div><br></div><div>Cheers</div><div><br></div><meta http-equiv="content-type" content="text/html; charset=utf-8"><div>
<br><div class="gmail_quote">On Sat, Apr 17, 2010 at 9:21 PM, kunal ghosh <span dir="ltr"><<a href="mailto:kunal.t2@gmail.com">kunal.t2@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi,<br><div class="gmail_quote">I am implementing the face recognition algorithm for digikam, and wanted to use <a href="http://en.wikipedia.org/wiki/GPGPU" target="_blank">GPGPU</a> frameworks for the same. But<br>was not able to decide which framework to use <a href="http://en.wikipedia.org/wiki/OpenCL" target="_blank">OpenCL</a> or <a href="http://en.wikipedia.org/wiki/CUDA" target="_blank">CUDA</a> (C for CUDA specifically).<br>
<br>PS: I am willingly not including any more information about either of the above frameworks to attract unbiased opinions.<br><br>Also, i could code part that would execute on the GPU in python , shortening the development cycle. Good python bindings exist for either GPU programming frameworks. Py[CUDA,OpenCL] are the bindings.<br>
<br>Python functions are easily callable from within C/C++ code as demonstrated by <a href="http://docs.python.org/release/2.5.2/ext/callingPython.html" target="_blank">Link 1</a> <a href="http://www.codeproject.com/KB/cpp/embedpython_1.aspx" target="_blank">Link2</a> and <a href="http://www.linuxjournal.com/article/8497" target="_blank">Link3</a><br>
so, is it fine if the algorithms are implemented in python and then called from within digikam.<br><br>all suggestions , comments welcome.<br><br></div>-- <br>regards<br>-------<br>Kunal Ghosh<br>Dept of Computer Sc. & Engineering.<br>
Sir MVIT<br>Bangalore,India<br><br>Quote:<br>"Ignorance is not a sin, the persistence of ignorance is"<br><font color="#888888">--<br>"If you find a task difficult today, you'll find it difficult 10yrs later too !"<br>
-----<br>
"Failing to Plan is Planning to Fail"<br><br>Blog:<a href="http://kunalghosh.wordpress.com" target="_blank">kunalghosh.wordpress.com</a><br>Website:<a href="http://www.kunalghosh.net46.net" target="_blank">www.kunalghosh.net46.net</a><br>
V-card:<a href="http://tinyurl.com/86qjyk" target="_blank">http://tinyurl.com/86qjyk</a><br>
<br>
</font><br>_______________________________________________<br>
Digikam-devel mailing list<br>
<a href="mailto:Digikam-devel@kde.org">Digikam-devel@kde.org</a><br>
<a href="https://mail.kde.org/mailman/listinfo/digikam-devel" target="_blank">https://mail.kde.org/mailman/listinfo/digikam-devel</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br>Aditya Bhatt<br>Blog : <a href="http://adityabhatt.wordpress.com">http://adityabhatt.wordpress.com</a><br>Face Recognition Library : <a href="http://libface.sourceforge.net">http://libface.sourceforge.net</a><br>
</div>