Hacker News new | past | comments | ask | show | jobs | submit login
Source for Predator Object Tracking (OpenCV) (github.com)
116 points by helwr on Apr 5, 2011 | hide | past | web | favorite | 31 comments

IMHO, Zdenek Kalal has some short sighted view for business. Even if someone offered him a plane filled with money for his algorithm, or if he thought "hey, I can sell this shit! fuck the world! show me the money!", he fails at acknowledging that it doesn't really matter whether you created one of the best algorithms for image recognition: what matters is if you can do it again.

What I'm talking about is, what if instead of selling one of the golden eggs, you give that for free and create a reputation for yourself worldwide, so more people will be willing to hire the golden egg's goose?

Anyway.. Somewhere, Richard Stallman is smiling.. and I'm happy for that.

Some people make things just because they love to make things.

Well he got a PhD for this one, that's something.

Also, I predict that after this source code leak, the link to the source code will be put back at his site.

And you were right.

Let's not jump to conclusions...

That article adds little to nothing to the author's original explanation. I'd suggest you read this page instead: http://info.ee.surrey.ac.uk/Personal/Z.Kalal/tld.html

That page also has links to the papers referenced by SandB0x.

You will need at least the image processing toolbox and statistics toolbox for MATLAB to run the code.

And at least version R2009B, to get the new syntax for unused function arguments or return values ("~"). Otherwise, search and replace them with dummy variable names to get it to run. Should just take a couple minutes.

I thought he wasn't releasing this... why is Henrik Abelsson releasing this and not Zdeneki Kalai?

He already released it, and once you release something under GPL you can't take it back. You can stop hosting it, but someone else is free to develop further on it.

Even so, I'm not sure this is a polite thing to do. I think it would be nice to respect the author's wishes for the moment:

We have received hundreds of emails asking for the source code ranging from practitioners, students, researchers up to top companies. The range of proposed projects is exciting and it shows that TLD is ready to push the current technology forward. This shows that we have created something "bigger" than originally expected and therefore we are going to postpone the release of our source code until announced otherwise. Thank you for understanding.


However as most of the tracking code is in Matlab - i.e. you can't just port this to your phone - I don't think the author has a great deal to lose here. If someone wants to re-implement the algorithms they may well need his expertise. (Edit: Looking at the code in more detail SammoJ may well be right, and this paragraph may be wrong.)

In fact, Henrik Abelsson may have more to lose if this is seen as poor etiquette, but I'm speculating here.

Translating MATLAB -> C isn't too bad and could be done without any domain knowledge. Just remember the pesky 1 start for MATLAB arrays... Having a quick glance through the code I haven't seen any major reliance on MATLAB built-ins. Also "most of the tracking code is in MATLAB" is false. The tracking builds upon the Lucas-Kanade tracker in lk.cpp which uses OpenCVs implementation. I'd estimate a couple of full days of work tops to re-write in C.

Qualifications: I have had to speed up (i.e. rewrite in C) a lot of complex MATLAB code.

The fun part is converting all the Matlab functions that call LAPACK/BLAS into direct bindings to said libraries. That stuff is so dense (although I guess if you're used to it, it's not so bad).

Is anyone seriously considering porting this to C? I'm thinking of doing this myself, as I'm really interested in applying the algorithm, but I don't have a lot of experience in this kind of thing.

I am thinking of porting his code to ccv (http://github.com/liuliu/ccv). Unfortunately, his code is released under GPLv2, and ccv is BSD licensed. I have sent email to him in order to obtain further permission.

Could you release a GPLv2 CCV library for the time being?

I'm also looking into porting it (probably to c++)

I did think about the ethics of posting it or not, and yes, it is a difficult issue, but ultimately decided that since the original author had willfully licensed and distributed the source code under the GPL the choice to allow distribution of that version had already been made.

Thanks, Henrik

OK, so we've got abelsson, helwr, and Zdenek all aware of what's going on here. What happened?

helwr, how do you have instant notification of this stuff?

abelsson, how did you get the source code? Did you email him early, get the GPLv2'ed source, and he later thought better of it?

Zdenek Kalal/ekalic/zk00006, are you reading this somewhere? Do you know or support the actions of these guys?

Regardless of abelsson's right (legally and ethically) to do this, I'd like to know the circumstances of this release before I use something that the author doesn't want used.

I was more or less a random passerby. The source zip was posted on his website and I download the file because I found the project somewhat interesting and wanted to examine it. This was before he removed the link to the source.

I have been in communication with Zdenek Kalal this morning however and he has requested that I delete the github repo for the time being, which I agreed to do after hearing his reasoning. Though hopefully it'll be back up soon with an official repository - that seems to be his intention, so I am willing to be patient and wait for a bit for him to sort out and set up a real project.

I picked up the original link on Google alert when Zdenek's Youtube video was at 90k views, posted on HN, day later it is at 267k and all over the web. The demo has the strongest wow factor I've seen since Thrun's talk: http://www.youtube.com/watch?v=TDqzyd7fDRc

I especially loved the excitement of Czechs: http://twitter.com/#search?q=Algoritmus%20%C4%8Desk%C3%A9ho%... Respekt!

And the source.. the source can be made better.

Even so, I'm not sure this is a polite thing to do.

It was also not a polite thing to do to be selfish and remove the source code link and the GPLv2 message that it would be handed over to whomever asked for it.

Thank you for posting that link! I didn't know the background.

You probably could get Octave running on rooted Android without too much pain.

My bet is this won't do what the video was showing. I'd love to be contradicted.

It does (works amazingly), why don't you download the compiled demo and see for yourself? =) -- http://info.ee.surrey.ac.uk/Personal/Z.Kalal/tld.html

Applications are open for YC Summer 2019

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact