Live data from Hacker News

How to build a robot that “sees” with $100 and TensorFlow

oreilly.com

31–40 of 63 posts

Re: How to build a robot that “sees” with $100 and TensorFlow

#32

Just a nit, but the author keeps talking about object recognition while what he was actually doing is image classification. Object recognition actually consists of two tasks, one is classifying the object (this is a beer bottle) and the other is also says where in the image the object is. Additionally it can/should detect multiple objects in the image. This is a more complex than classification, which only associates…

Actually the tensorflow implementation he uses does both segmentation and classification and returns a probabilistic graph of objects. For his application, it's only returning the top result, so it looks more basic than it is.

Re: How to build a robot that “sees” with $100 and TensorFlow

#33
Sorry for the off topic but is anyone else getting very high cpu usage from O'Reilly websites? Any known resolution or work around?

With Chrome developer tools I see one error: "Uncaught SecurityError: Failed to read the 'localStorage' property from 'Window': Access is denied for this document."

Re: How to build a robot that “sees” with $100 and TensorFlow

#34
post #14

Earlier quoted context omitted.

To do the task in the article (classify images, pretrained model) - it's pretty easy - just follow the tutorial here: https://www.tensorflow.org/versions/r0.10/tutorials/image_re...

I tried that ( https://www.tensorflow.org/versions/r0.9/how_tos/image_retra... ) which seems to work well.

yep, that's good if you want to retrain a pre-trained model for specific categories on new image data (that are pretty close to imagenet type images)

Re: How to build a robot that “sees” with $100 and TensorFlow

#35

Just a nit, but the author keeps talking about object recognition while what he was actually doing is image classification. Object recognition actually consists of two tasks, one is classifying the object (this is a beer bottle) and the other is also says where in the image the object is. Additionally it can/should detect multiple objects in the image. This is a more complex than classification, which only associates…

Actually the tensorflow implementation he uses does both segmentation and classification and returns a probabilistic graph of objects. For his application, it's only returning the top result, so it looks more basic than it is.

No, it doesn't and there is no graph returned whatsoever. It's just a list of the top classification labels for the image (see example at the tutorial he cited https://github.com/tensorflow/tensorflow/tree/master/tensorf...). This is not the result of a segmentation but is rather a list of the top labels the model believes this could be. If you look at the top results you'll see they're usually similar/in the same family (again, refer to the example in the linked tutorial, the top 3 labels are: military uniform, suit, academic gown). This is literally the normalized output of the nodes of the last layer in the neural network (where each node corresponds to one category). If you added all probabilities together it'd sum to 1.

Re: How to build a robot that “sees” with $100 and TensorFlow

#36

Earlier quoted context omitted.

Actually the tensorflow implementation he uses does both segmentation and classification and returns a probabilistic graph of objects. For his application, it's only returning the top result, so it looks more basic than it is.

No, it doesn't and there is no graph returned whatsoever. It's just a list of the top classification labels for the image (see example at the tutorial he cited https://github.com/tensorflow/tensorflow/tree/master/tensorf... ). This is not the result of a segmentation but is rather a list of the top labels the model believes this could be. If you look at the top results you'll see they're usually similar/in the same f…

That's my point. With these OTS modules they are only returning on known classifiers.

The system has to segment before it classifies. That isn't returned to the user, but gradient descent is happening in the background. Like I said, it's a nitpick but important if you're trying to really build novel CV applications.

One of my gripes with people implementing pre-built modules from TF is that you don't really build any of the hard stuff, and it's pre-trained so not much learning is happening. You can't for example build RL systems with off the shelf TF implementations.

Re: How to build a robot that “sees” with $100 and TensorFlow

#37

Earlier quoted context omitted.

No, it doesn't and there is no graph returned whatsoever. It's just a list of the top classification labels for the image (see example at the tutorial he cited https://github.com/tensorflow/tensorflow/tree/master/tensorf... ). This is not the result of a segmentation but is rather a list of the top labels the model believes this could be. If you look at the top results you'll see they're usually similar/in the same f…

That's my point. With these OTS modules they are only returning on known classifiers. The system has to segment before it classifies. That isn't returned to the user, but gradient descent is happening in the background. Like I said, it's a nitpick but important if you're trying to really build novel CV applications. One of my gripes with people implementing pre-built modules from TF is that you don't really build any…

Do you understand how convolutional neural networks work? There is no segmentation involved here at all. The input are the raw pixels of the image. The output is the probability this image belongs to one of the categories the network is capable of predicting.

Also gradient descent has nothing to do with segmentation at all, I don't understand what you're talking about. Gradient descent is used to find the set of weights that minimizes the error. This is standard in training neural networks of any kind using backpropagation.

Re: How to build a robot that “sees” with $100 and TensorFlow

#38
post #6
post #4

> recognizing arbitrary objects within a larger image has been the Holy Grail of artificial intelligence The Holy Grail is general AI. Recognizing objects is a side quest, perhaps a required step, but, by no means, the end goal.

Like so many other things in the field of AI, general object recognition was the "holy grail" because it was assumed that it required AGI. Now we've figured out a way to do general object recognition without AGI.

Let me assure you: Only CV researchers thought so :)

I was at one time guilty of this. But hey, I was young and stupid :D

Re: How to build a robot that “sees” with $100 and TensorFlow

#39
post #14
post #3

This was amazing, I am amazed at your command of both hardware and software technology. Even as a Software Engineer, I have a hard time trying to make TensorFlow do something for me.

To do the task in the article (classify images, pretrained model) - it's pretty easy - just follow the tutorial here: https://www.tensorflow.org/versions/r0.10/tutorials/image_re...

Is this available in keras as well?

Re: How to build a robot that “sees” with $100 and TensorFlow

#40
post #19
post #17

My biggest current question is which keyboard is this, on the image in the article?! https://d3ansictanv2wj.cloudfront.net/Figure_2-985cd20ea0c0b...

Looks like Karnotech Foldable Silicone Keyboard

Looks like you are right. Based on the image I thought it was something mechanical. Looks nice, but I'm not fond of foldable keyboards :( .
Post reply on HN