[HN Gopher] Ancient secrets of computer vision
___________________________________________________________________
Ancient secrets of computer vision
Author : bjourne
Score : 212 points
Date : 2021-11-09 15:04 UTC (7 hours ago)
(HTM) web link (pjreddie.com)
(TXT) w3m dump (pjreddie.com)
| Joker_vD wrote:
| While the content is definitely great, its outer looks are not so
| much. I am afraid I value whatever scraps of non-computer, human
| vision I still have left with me a tad more than learning those
| cool eldritch secrets... although the reader mode definitely
| helps.
| jerf wrote:
| Then you should _definitely_ not go to YouTube and search for
| "vaporwave". Definitely definitely definitely.
| [deleted]
| lolsal wrote:
| Alternative opinion: The design of the site is a welcome breath
| of fresh air. Not every site needs gobs of whitespace, neutral
| colors and advertisements.
| batguano wrote:
| That logo is exceptionally hideous.
| fortyseven wrote:
| In the best way, for me. Gives it personality.
| bloqs wrote:
| Content is solid. I'm afraid I can't ignore the author's resume
| link... https://pjreddie.com/static/Redmon%20Resume.pdf
| orangepurple wrote:
| Extremely knowledgeable and talented people can still harbor
| mental illnesses.
| version_five wrote:
| Solid - certainly memorable. I like it a lot better than those
| ones with meters that show your levels of various skills
| jstx1 wrote:
| Hm. Do you think this is deliberate to filter out people with
| certain prejudices? Or do they genuinely think it's a good
| design?
| enriquto wrote:
| the space in the filename does it for me. What a savage.
| bozzy wrote:
| I'd say it is a good example of how not to take yourself too
| seriously. The contrast is cool too! He's achieved quite a
| bit and expressed it in such a cool and playful way.
| dekhn wrote:
| it helped him get an internship at Google where he worked on
| computer vision. the person who hired him said it was a great
| resume and he was the smarted guy he ever worked with.
| canjobear wrote:
| Countersignalling. By deviating from the "professional" look
| so ostentatiously, they signal that they are so good that
| they don't need to use the usual look.
| jointpdf wrote:
| And then there are people like me, who seem to believe that
| if their resume spacing is off by a nanometer, then the
| entire world will view them as an unemployable failure.
| randomluck040 wrote:
| It's PJ Reddie after all, the YOLO guy.
| monocasa wrote:
| For those who need a bit more context, YOLO the object
| recognition ML model. He can work anywhere he wants.
| reedf1 wrote:
| YOLO was such a shake up of the computer vision space that he
| could probably get hired just about anywhere with a resume
| crudely written in crayon.
| jacobolus wrote:
| The charts in this paper are hilarious:
| https://pjreddie.com/media/files/papers/YOLOv3.pdf
|
| Previous authors didn't start their axes at 0, so he kept
| their axes and just put the timing for YOLO outside the
| original chart area.
| mdp2021 wrote:
| Well, it is almost unforgettable, is not it? "Outstanding".
| named-user wrote:
| For the jobs he's going to be successful at, he doesn't need a
| CV.
| syntaxing wrote:
| Whoa sounds interesting! I always wondered what happened to him
| after giving up on YOLO because he felt it was against his
| morals. I honestly give him props because he probably could of
| capitalized on his work if he wanted to and play his cards right.
| yboris wrote:
| Sorry, grammar pet peeve of mine: "could have" not "could of"
| :) cheers!
| rg111 wrote:
| What's the best CV course nowadays that comes with videos,
| assignments, hws, etc.?
|
| It used to be the one taught by Justin Johnson at UMich [0].
|
| But the publicly available videos have been last updated in 2019.
|
| [0]:
| https://web.eecs.umich.edu/~justincj/teaching/eecs498/FA2020...
| ibrarmalik wrote:
| I like Andreas Geiger's lectures on U. Tubingen [0]. Quite
| recent, and I think the topics they cover are good.
|
| [0] https://uni-tuebingen.de/fakultaeten/mathematisch-
| naturwisse...
| monocasa wrote:
| A really ancient secret, one of the grey beards I learned a lot
| from early in my career told me about how he got CV running on an
| Apple II way back in the day on the cheap. He decapped a DRAM,
| and carefully stuck a lens on it. They're not just susceptible to
| cosmic rays; without the package regular old visible light rays
| can cause bit flips too. If you look at CMOS sensors these days
| they actually have quite a bit in common with DRAM.
| dapids wrote:
| I think I'm missing the point. What does any of this have to do
| with computer vision?
| LukeShu wrote:
| He was able to turn a RAM chip into a camera, allowing the
| computer to process a video "feed" simply by polling the
| right bits in RAM. On a device that would normally be
| considered much too primitive to do any image processing.
| bozzy wrote:
| I can attest to this and I have been making reference back to
| this course a lot and I have recommended it to a few people
| starting this CV journey. Joseph is also the creator of Yolo, so
| go figure!
| [deleted]
| csdvrx wrote:
| It's nice, but missing the most valuable (and simplest) take from
| computer vision: the Hough transforms.
|
| Let's take the circle Hough transform as it's one of the most
| enlightening ones!
|
| Say you are looking for a circle of a given diameter. After a
| binarization to make the edge stand out, make all the potential
| points "vote" for a circle center.
|
| The method is simple: using a matrix, you +1 all the points that
| are as far from this point as the radius of the circle will
| allow.
|
| Do this for every point, and take the max:
| https://en.wikipedia.org/wiki/Circle_Hough_Transform
|
| Simple, and works in guaranteed time.
|
| Extension 1: if you don't know the radius, apply iteratively for
| a range of values, then again, take the max: if you imagine how
| it works (or code it as an example then animate the result), it's
| like doing a "mathematical" focus.
|
| Extension 2: if it's too costly to do a dense exploration of the
| space of values for the radius, while you know there's only one
| circle, do a gradient descent on the increase.
|
| Extension 3: If there are more that one circle, other techniques
| exist - the easiest to picture are based on the maximization of
| variance of the distribution of values in the matrix resulting
| from the binarization, but you can also use 2d lattices and other
| fun tricks.
| matthewmacleod wrote:
| I will take the opportunity to call out one of my favourite
| libraries, BoofCV (http://boofcv.org)
|
| It comes with a wonderful demonstration tool that allows you to
| apply the various included algorithms to images and tweak the
| parameters in real-time - including the Hough transform. A
| great tool for helping to understand how these kinds of
| algorithms work!
| [deleted]
| amelius wrote:
| > After a binarization to make the edge stand out, make all the
| potential points "vote" for a circle center.
|
| It's even simpler to make artificial neurons vote for a circle
| center.
|
| You don't need the binarization step, and you can apply the
| method to other shapes as well.
| csdvrx wrote:
| > It's even simpler to make artificial neurons vote for a
| circle center.
|
| Is it?
|
| It's not conceptually simpler: people can more easily imagine
| circles around points converging to a center, so they can
| also put that idea into code more easily.
|
| > you can apply the method to other shapes as well.
|
| Yes you can. Read about Hough.
|
| I just presented the one that is the most enlightening.
|
| I may be biased against neural network approaches and their
| likes, because I see them as black boxes with failure modes
| that are hard to predict or work around: I prefer what I can
| understand and explain, and unfortunately, it seems at odd
| with the current demographics of ML (cf
| https://news.ycombinator.com/item?id=27361812 ) who has no
| clue about what makes these black boxes tick, sometimes even
| after they get a PhD in the dark art of tweaking black boxes.
| edge17 wrote:
| One of the nicer things about the hough approach is also
| that you can get a bunch of other information from
| parameter space, like horizon lines and vanishing points.
| edge17 wrote:
| The hough transform generalizes to other shapes as well
| abetusk wrote:
| Some links that helped me understand the Hough transform:
|
| * https://towardsdatascience.com/lines-detection-with-hough-
| tr...
|
| *
| https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.2....
| scratcheee wrote:
| I agree it's very cool, but I have found it to be surprisingly
| poor in certain scenarios.
|
| A "faint" circle will often score worse than 2 high-contrast
| parallel lines that happen to be the right distance apart,
| since the lines manage to trigger pixels along 20% of a
| circle's arc and their contrast massively inflates their score
| compared to the faint circle (higher edge pixel density).
|
| It seems like there should be a simple way to weight the
| results by how dispersed within the circle's arc the pixels
| are, but I've never dug any further, after hitting this problem
| I had to move on.
| TaylorAlexander wrote:
| My initial reaction is that adding an angle parameter would
| help. A circle should have votes from many angles while lines
| will vote from only a portion of the circle. With some added
| weight from angled convergence the faint circle could score
| higher.
| slingnow wrote:
| As someone who does computer vision for a living, you're going
| to need to explain how this is:
|
| 1. The most valuable take from computer vision
|
| 2. The simplest take from computer vision
|
| Not to mention this is rarely useful unless you're in a
| specific context where you're looking for circles in an image.
| wiz21c wrote:
| As someone who has done a bit of CV too, I'd like to know
| what are the 2 or 3 algorithms you think are really useful ?
|
| (personally I was impressed by mixture of gaussians
| background removal))
| zwieback wrote:
| Hough transform is awesome and it was patented in 1962!
| sasaf5 wrote:
| The Hough is a good one! Also Invariant Moments:
| https://en.m.wikipedia.org/wiki/Image_moment
| Edmond wrote:
| Hausdorff distance is also a simple probabilistic technique that
| works quite well:
|
| https://ecommons.cornell.edu/bitstream/handle/1813/6165/92-1...
|
| In a different life I toyed with it a bit:
| http://pugoob.blogspot.com/2008/01/pugoob-image-search-tool....
| ffhhj wrote:
| Back in the day, before Vuforia implemented volumetric tracking,
| I developed my own Pepsi can detector for an augmented reality
| app, just processing filters.
___________________________________________________________________
(page generated 2021-11-09 23:00 UTC)