10 ms·
Reverse OCR
- albertzeyer 12y agoI was thinking about this: http://www.cs.toronto.edu/~graves/handwriting.html http://www.cs.toronto.edu/~graves/handwriting.html
- amelius 12y agoI wonder if it also works for voice synthesis.
- rogiervd 12y agoNot yet, I think, but people are seriously trying. http://research.google.com/pubs/HeigaZen.html http://research.google.com/pubs/HeigaZen.html
- padho 12y agoThats nice, thank you for the link!
- DINKDINK 12y agoUnfortunately it does not take acute accents. Such as the sentence: Ceci n'est pas écriture humaine.
- geon 12y agoNor umlauts, like åäö.
- the_cat_kittles 12y agothat is so impressive, wow. thank you for the link
- sah2ed 12y agoVery impressive! The author published an open source library -- RNNLIB [1] used for his neural network research but is the actual code for this hand writing demo published somewhere? [1] http://sourceforge.net/p/rnnl/wiki/Home/ http://sourceforge.net/p/rnnl/wiki/Home/
- bane 12y agoThis could be a cool way to visually "encrypt" messages. They're readable, but only by the correct tool. I wonder how these squiggles might be creatively arranged steganographicly in an image and still be "read" by the OCR tool.
- Goopplesoft 12y agoQR code?
- SilasX 12y agoCorrect me if I'm wrong here, but that just seems like reinventing crypto with a large key, and requires you to implement a counterparty-provided algorithm, which could be malicious.
- sp332 12y agoThe point of steganoraphy is that no realizes there's a message.
- SilasX 12y agoAnd? It still has key sizes, the enemy still knows the system.
- dragontamer 12y agoSteganography is solidly a "security through obscurity" thing. Sure, we comp-sci people don't care about that, but spies do. There was that Russian Spy who was transmitting data for years on her Facebook account through steganography pictures on her Facebook account. http://www.technologyreview.com/view/419833/russian-spies-use-of-steganography-is-just-the-beginning/ http://www.technologyreview.com/view/419833/russian-spies-us... The FBI didn't know about it until after she was caught. So believe it or not, Steganography _works_. If you're trying to hide the fact that you're a spy, encrypting all of your messages over TOR is a bad idea. On the other hand, if you pretend to be a normal person and embed secret messages in your Facebook posts, you can be a spy for years and not get caught.
- cosarara97 12y agoI couldn't get that OCR to read my mouse-written E. It's a nice experiment nevertheless.
- amelius 12y agoIndeed, the underlying OCR seems to need lots of work still. It's no wonder that the "reverse" operation results in such messy line art. The demo is nice, though.
- mrtbld 12y agoPerhaps this could lead to a new kind of captcha that only bots can solve. I doubt it would be efficient, though.
- jimmytidey 12y agoBot Honeypot
- zz1 12y agoHoneyBot
- cryowaffle 12y ago... that's a pretty interesting idea!
- rmc 12y agoIf a correct answer is given, presume it's a bot.
- _lce0 12y ago..simply solved making bots answer randomly the first time
- bkirwi 12y agoStartup idea: create a CAPTCHA that humans recognize as one word, but OCR recognizes as a different word.
- OscarCunningham 12y agoThis HN item: https://news.ycombinator.com/item?id=8544911 https://news.ycombinator.com/item?id=8544911 was about how to do this for neural nets.
- justaman 12y agoIf this bot can generate scribbles from words. Theoretically, couldn't this bot work to teach an OCR-bot to effectively recognize scribbles as letters?
- emhart 12y agoIt has been fantastic watching Darius' myriad experiments over the past few years. His work always has a great mixture of whimsy and serious experimentation.
- MrBra 12y agoNice. Finally computers approached the age of writing. :)
- Aaronneyer 12y agoLooks like my handwriting
- userbinator 12y agoI can imagine generating a few pages or even an entire book of this, and some future generations attempting to figure out what sort of language it was written in... reminds me of this: http://en.wikipedia.org/wiki/Voynich_manuscript http://en.wikipedia.org/wiki/Voynich_manuscript
- jdimov 12y agoWhat (if anything) is this saying about the quality of the OCR process? Especially since none of these seem human readable.
- praptak 12y agoNot much, probably. It would be largely wasted effort to tune OCR algorithms to avoid (falsely) recognizing letters in artificially synthetized datasets that don't occur in practice.
- d23 12y agoWhy's it so highly upvoted then? I was expecting something moderately legible.
- mglinski 12y ago> I was expecting something moderately legible. Is human handwriting anything more then repeated patterns with lines and shapes on a 2d plane? A computer program designed by humans to assist with human constructs can infer meaning from what appears to be mostly noise to humans. It hits us hard because communication through complex language is the defining trait of our species. It manages to do what we do, and many people are intrigued by the results. Are we just observing the results of our actions or did we just take one more small step towards the singularity?
- pavel_lishin 12y agoI'm not bothered by it any more than I'm bothered by our brains' propensity for seeing faces where there aren't any.
- k_sze 12y agoI think one of the problems is that the OCR assumes the images to be (English) letters. To be really really useful, the OCR would need to consider at least all characters in the Unicode Basic Multilingual Plane. And then it needs to be able to reject an image as containing any word, and then it needs to solve the halting problem.
- jparishy 12y agoNot strictly related, but reminded me of the exercise in genetic programming by Roger Alsing: http://rogeralsing.com/2008/12/07/genetic-programming-evolution-of-mona-lisa/ http://rogeralsing.com/2008/12/07/genetic-programming-evolut... It's a rather cool attempt to draw the Mona Lisa using random, semi-transparent polygons
- darkFunction 12y agoI did this recently, the results were surprisingly good! https://github.com/darkFunction/PolygonPainter https://github.com/darkFunction/PolygonPainter Edit: Roger Alsing's implementation was a single entity population (mutated then reverted if the mutation was no good). I copied this approach in my first implementation, but found that much better results could be achieved with a breeding population of genes.
- tlarkworthy 12y agoYeah really good results, conceivably useful for compression. It be good to know the vertices count in your final penguin images.
- darkFunction 12y ago100, 6-sided polygons :) Though it looks pretty good with as few as 50
- PavlovsCat 12y ago> I copied this approach in my first implementation, but found that much better results could be achieved with a breeding population of genes. Ohhh, interesting, thanks for posting this! I just started playing around with this myself a few days ago in Javascript (it has no UI so no link yet, but I uploaded some samples [0]), and it also uses the original simple approach. I wondered about an "actual" gene pool and cross-breeding, but shyed away from the additional effort for uncertain benefit... so this helps, greatly :) One thing I intend to try is to get the fittest (in terms of likeness to target image), and then calculate the fitness of the other genomes by taking the difference (in terms of variables that determine the shapes) to that "champion". I see you take the two most fittest as is, maybe this could be useful for picking the second one? Also, when the Mona Lisa thing was posted on HN, someone suggested marking areas of the target image as "more important", to maybe make facial features etc. more recognizable. I'll also see if making such a mask automatically, e.g. influenced by contrast, helps any. [0] http://imgur.com/a/4duom http://imgur.com/a/4duom
- Applico 12y agovery cool idea.
- kitd 12y agoCould be used for automated printing of doctors' prescriptions ;)
- praptak 12y agoThis is similar to the project where images of clouds were fed to face recognition software: http://ssbkyh.com/works/cloud_face/ http://ssbkyh.com/works/cloud_face/
- shangxiao 12y agoI'm also intrigued by the cat vs human face recognition results!
- stefs 12y agothere's also http://iobound.com/pareidoloop/ http://iobound.com/pareidoloop/, a project that uses a genetic algorithm for breeding (random) polygons into a shape with a face detection algorithm as the fitness function.
- nihakue 12y agoThat is totally cool. It feels like watching an oil painter slowly work from something very abstract (layers of brushstrokes) to something very recognizable (a human face).
- shangxiao 12y agoThis is pretty cool, although it makes me wonder what the real world applications could be. It does, at the very least, tantalise my curiosity and gets me thinking.
- klausa 12y agoI highly recommend watching talk Darius Kazemi (author of Reverse OCR) gave at this years XOXO: http://www.youtube.com/watch?v=l_F9jxsfGCw http://www.youtube.com/watch?v=l_F9jxsfGCw
- jostmey 12y agoA generative model, although computationally expensive, would not suffer this problem. Essentially a generative model can run in reverse, which means that if you feed values into the output you get inputs that could explain the output. Check out "Boltzmann Machines" for an example. There are plenty of examples for the MNIST dataset of hand written digits.
- methyl 12y agoI wonder what would happen if you run this program letter-by-letter, possibly the readability could increase.
- mslot 12y agoI love algorithmic art.
- carsonreinke 12y agoLooks like he has written tons of very creative bots. They are all very interesting ideas (e.g. http://randomshopper.tumblr.com http://randomshopper.tumblr.com)
- mturmon 12y agoAgreed: http://www.bostonglobe.com/ideas/2014/01/24/the-botmaker-who-sees-through-internet/V7Qn7HU8TPPl7MSM2TvbsJ/story.html http://www.bostonglobe.com/ideas/2014/01/24/the-botmaker-who...
- lucb1e 12y agoI can already imagine the innovation: > Type over this text to prove that you are a computer. > Human detected. Shoo, shoo!
- achr2 12y agoCould this be used in a pseudo reverse CAPTCHA by showing a series of words, and asking the user to say which is not human readable?
- deleted 12y ago[deleted]
- eurleif 12y agoIt would be neat to see the same thing, except using two OCR libraries instead of just one, and requiring both libraries to be able to read the message. I imagine the letters would start to look a bit less insane.
- driverdan 12y agoHere's the source code on github: https://github.com/dariusk/reverseocr https://github.com/dariusk/reverseocr
- z3t4 12y agoI can't believe OCR has not been solved yet. The only one even close is OmniPage.
- Tepix 12y agoIsn't OCR pretty good these days?
- bmh100 12y agoThis actually seems like a great program for automatically generating adversarial examples to improve OCR. A human could rate this text as being illegible or legible. Each example can then be added to the training data to improve its quality.
- mng2 12y agoThe Letter Spirit project (a Douglas Hofstadter thing) is sort of in that vein, but less prosaic in its objectives.
- sgentle 12y agoIt would be pretty interesting to see one degree of abstraction up from this - what sets of lines are close enough to match a certain word? If you averaged over all those sets, would the resulting blobby heatmap resemble the original word in a legible form? Or something else?
- zwass 12y agoThis reminds me of an experiment I played with using random search to "teach" the browser how to draw characters: http://zwass.github.io/Learn2Write/ http://zwass.github.io/Learn2Write/