Live data from Hacker News

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

oreilly.com

41–50 of 63 posts

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

#41
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...

Is this available in keras as well?

Classification with pre-trained weights? Yes.

https://keras.io/applications/

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

#42
post #23

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…

http://pjreddie.com/darknet/yolo/ , https://github.com/daijifeng001/MNC , https://bitbucket.org/aquariusjay/deeplab-public-ver2 or similar should do the job. Choose depending on how fast it needs to be, and how accurate the segmentation boundaries need to be

Here's another one: https://github.com/facebookresearch/deepmask

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

#43
post #34

Earlier quoted context omitted.

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)

What do you mean by "pretty close"? What would be "not close"?

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

#44

This reminds me of a low res vision system I read about 20 years ago: http://www.seattlerobotics.org/encoder/jan97/lowresv.html I've always been kind of intrigued by what is possible with very simple hardware.

Do you know what ever happened to the Encoder? I used to be so excited as a kid when a new issue came out.

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

#45
post #13

Earlier quoted context omitted.

"I then built a simple Python webserver to spin the wheels of the robot based on keyboard commands that made for a nifty remote control car." So, not autonomous it would seem. With that and an arm, though, you could eventually get it to play fetch...

Ah, right. You could do this project with a cheap RC car and a phone running TF stuck on it

The mention of sonar sensors, used to prevent the car from running into obstacles, made me think the author was planning to make the robots autonomous too, but maybe just hasn't gotten that part worked out yet. I was also curious how the robot would know when to stop and try classifying something, without the operator explicitly telling it so.

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

#46

This reminds me of a low res vision system I read about 20 years ago: http://www.seattlerobotics.org/encoder/jan97/lowresv.html I've always been kind of intrigued by what is possible with very simple hardware.

Do you know what ever happened to the Encoder? I used to be so excited as a kid when a new issue came out.

No I don't.

It was a fantastic resource and I bet it was a lot of work to put one together. I sure appreciated the people that took the time to make it.

I always wanted to find some way to get to one of their meetings but it never worked out.

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

#47
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.

Author here - I guess "the holy grail" is overstated, but recognizing arbitrary objects is a tough problem that people have put a ton of time and energy into. I think to really get it right in all cases you may need general AI.

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

#48
post #17

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

This was the keyboard - https://www.amazon.com/gp/product/B0179N39KS/ref=oh_aui_sear... - it's incredibly light and cheap but one month later I'm not sure I'd recommend it. A bunch of the keys were randomly mapped incorrectly and it's started to flake out on me a little bit.

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

#49
post #22

I would like to know how long it "thinks"- it is clear the camera is paused for a while while the robot parses the image..

It thinks for around 3 seconds. It doesn't use the PI's GPU - I bet that if it did it could get a lot faster. I bet you could monkey around with the compiler flags and speed it up. If anyone working on TensorFlow has some ideas, I'd love to hear them.

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

#50
post #10

Dis the author publish a repo for this? It's easy getting tensorflow going for basic image classification but the hard part is actually making the robot move in a way that makes sense - using the camera and the sonar data to make decisions and then drive the motors. Or is this not autonomous?

"I then built a simple Python webserver to spin the wheels of the robot based on keyboard commands that made for a nifty remote control car." So, not autonomous it would seem. With that and an arm, though, you could eventually get it to play fetch...

I made an autonomous mode using the sonar sensors and a driving mode. I also made a public repo, but I didn't want to link to it, since the code is so awful (it was just a fun hobby project and I wasn't expecting people to look at it).

If you promise not to judge me, you can use anything at your own risk here: https://github.com/lukas/robot

Post reply on HN