
UCLA has published a powerful new image-detection algorithm - kungfudoi
http://www.pcworld.com/article/3032243/ucla-just-open-sourced-a-powerful-new-image-detection-algorithm.html
======
dnautics
It is literally just an arctangent sigmoid (with appropriate normalization)
applied to the fourier transform of the image [0]. The thought that ran
through my mind is:

"Are you .... kidding me?"

[0] [https://github.com/JalaliLabUCLA/Image-feature-detection-
usi...](https://github.com/JalaliLabUCLA/Image-feature-detection-using-Phase-
Stretch-Transform/blob/master/PST.m)

Key lines are line 103/104, some stuff with ffts and iffts surrounding it.

~~~
elcritch
Thanks, that's pretty useful. Next time I'm doing image analysis I'll have try
applying a sigmoid transformation in fourier space. Never realized it was this
straightforward!

BTW, perhaps it'd be handy to list prior art if it's really a redundant
patent.

~~~
dnautics
You don't have to use arctan, either. Probably logistic sigmoid will do just
fine, too. I think there's also a low frequency bandpass in this particular
implementation. If you think about what that means in Fourier space, why you
get the results shown makes a whole lot of sense.

------
lotsoflumens
It's sad and annoying - another bunch of academics who can't be satisfied with
using public research money to benefit the public.

They just _have to_ go ahead and patent mathematics too. It's pathetic.

~~~
kristopolous
The crazier thing is that releasing the source code like this, at least to me,
is quite unusual.

I've read a number of academic papers where I had to email the authors and ask
nicely for the source code; much of the time not getting a response.

You'd think the academic community would be on the forefront of embracing the
new open intellectual movement...

~~~
Houshalter
See this comment:
[https://www.reddit.com/r/MachineLearning/comments/39yj8y/why...](https://www.reddit.com/r/MachineLearning/comments/39yj8y/why_isnt_code_submission_mandatory_for_top_ml/cs7oca4)

> _The code is a mess_ \- Most code is written by grad students, it's often
> sloppy scripts that are duck taped together to get the numbers and graphs
> needed for the paper. I know some students who essentially have to rebuild
> things from scratch if they need to expand on what they did for their
> thesis. Releasing this type of code is embarrassing to the dept, advisor,
> and student.

> _Don 't want to support it_ \- Even with disclaimers, there'll inevitably be
> someone who downloads the code, and emails asking for help/support.
> Depending on the quality of the code some may even claim that your results
> are false because _they_ couldn't get it running on their application. I'm
> all for peer review and agree that code should be available, and further i
> know that the scenario is probably a rare occurrence, but still some would
> rather not publish it to avoid it entirely.

> _Simply don 't know where or how_ \- granted i'm in the engineering school
> (not cs) so milage may vary, but you'd be surprised how many students i've
> talked to that just don't know much about github or repositories (even svn).

> _There 's no incentive_ \- students are already overworked, what benefits do
> they gain from publishing their code? It helps academic research, yes. But
> most just want to finish their phd and move on to the next thing, anything
> else just takes time away from them accomplishing that goal.

> _Funding conflicts_ \- part of the code i use was developed by another
> student who was funded by a particular grant where a deliverable was
> required at the end. Thus, anything i release cannot include that code,
> which inevitably breaks the rest. I do not know the particulars of the grant
> or why it is not allowed to be released, this is just the response i receive
> when i ask to put my code online.

~~~
OvidNaso
That is interesting, but really only the first point is outside the scope of
issues that would be addressed or rectified if the academic community as a
whole were to embrace an open culture.

------
Isamu
The original press release here: [http://newsroom.ucla.edu/releases/ucla-
researchers-release-o...](http://newsroom.ucla.edu/releases/ucla-researchers-
release-open-source-code-for-powerful-image-detection-algorithm)

------
beerbajay
"image detection" isn't a thing. Unless they mean finding subcomponents of
images which are themselves images. Which they don't.

------
monocasa
But no licence given on the github page. Seems like a trap to later sue
someone for patent infringement.

~~~
dheera
Give them a break. Most academic researchers don't have any motivation to
"trap" people using sneaky tactics like that. Furthermore, a lot of people in
academia are pretty oblivious to the nuisances between the mind-boggling
variety of software licences out there.

I'm not saying it's right to be oblivious, but more than likely some poor
sleepless grad student is more worried about his/her thesis, graduating, and
getting the whole algorithm published in a journal, having lots of people use
it and cite her/him, than trapping and suing people. Doing sneaky stuff on
purpose would reflect very poorly on the student, professor, research group,
and institution.

If this were the work of a startup, I would have a different opinion, but
coming out of UCLA, I'd highly, highly, highly doubt they are deliberately
trying to trap you.

Send them a comment on Github and gently remind them to provide licence
information.

~~~
thebouv
They did provide a license.

Research purposes only.

Explicit license must be obtained for commercial use directly from UCLA.

I don't think it is a trap either. I think it is exactly what their
department's legal advisor told them to put on there or is boilerplate they
even put in a printed document of the algorithm or any research paper.

It doesn't need more than that just because it is open source and it doesn't
need a well-known OSS license either.

Now, I hope they DO go with a more detailed license that is "more" OSS
friendly.

~~~
dheera
"from UCLA". That might mean the researchers intend to apply for a patent on
behalf of the university via their technology licensing office or similar,
because most universities don't permit individuals to apply for patents solely
in their name for research done using university resources. Whether or not the
university actually wants to pursue the patent application it is another
story.

It's conceivable that they may want to use said patent to spin-off a startup
or do something else with it. However, I agree with you that I do not think it
is a trap. As a general rule it's very, very bad to be sneaky in academia and
once you publish anything it's pretty standard that you should be open about
your intentions regarding already-published work.

------
Difwif
So this essentially looks like a new edge detection algorithm. I wonder what
additional properties it has from some of the more traditional methods.

------
donretag
It has been a really long time since I have looked at Matlab code, but I am
surprised how few lines of codes are required.

Must study it further, but it shows that not all tech advances requires lots
of coding. In this case, the research was the crucial part.

------
andersonfreitas
For those who want to play with it and don't have access to MATLAB, I've spent
some minutes and ported to Python:

[https://github.com/andersonfreitas/pst/blob/master/PST.ipynb](https://github.com/andersonfreitas/pst/blob/master/PST.ipynb)

------
iamleppert
Looks like your run of the mill edge detection filter lol

------
thisisdave
So, it's an edge detector? What makes it better than existing methods?

~~~
jxramos
Good question, there's an interesting link to a wiki page in their matlab
function docstring

[https://en.wikipedia.org/wiki/Phase_stretch_transform](https://en.wikipedia.org/wiki/Phase_stretch_transform)

~~~
TTPrograms
My definition of "interesting" for an algorithm would include at least 1 line
of the 1 line of math required for implementation.

------
mankash666
So instead of wondering how an existing application of edge detection can
benefit from this algorithm, HN is discussing the politics of profit in
academia?

Let's focus HN-ers. How can this new algorithm be used to build a better
"mouse trap"?

~~~
mwfunk
If it's currently (or soon to be) patented, then this algorithm can't even be
used as a starting point for discussion. Anything that comes from such a
discussion would be legally tainted by the patented algorithm. Patenting this
renders it utterly useless to anyone but a patent troll, and that is not
hyperbole.

~~~
mwfunk
Put another way: if someone was going to be developing an algorithm that does
anything remotely like what this algorithm does, the legal advice that that
person's institution would give them would be to not read anything about this
particular algorithm. Like, don't even visit this web page or participate in
this thread on HN, because doing so exposes a legal attack surface for future
litigation. That's how effed up this is, it's inexcusable.

~~~
mankash666
This new method has zero value, regardless of it's patent status, if it cannot
be used to build a better mouse trap. So, let's first see if one can ever use
this to enable a superior product first.

------
malkia
"Essentially, a new art-style" :)

------
gjem97
Can you call it open-source if it has no explicit license and the README
contains this?

PST function is developed in Jalali Lab at University of California, Los
Angeles (UCLA). PST is a spin-off from research on the photonic time stretch
technique in Jalali lab at UCLA. More information about the technique can be
found in our group website:
[http://www.photonics.ucla.edu](http://www.photonics.ucla.edu) This function
is provided for research purposes only. A license must be obtained from the
University of California, Los Angeles for any commercial applications. The
software is protected under a US patent.

~~~
danso
Was just about to post the same thing. Probably not worth even clicking this
link or following through to the Github if you really do need a good algorithm
but aren't comfortable with doing a clean room implementation.

