I built a robot with tensorflow running on the raspberry pi to do autonomous driving and computer vision: http://www.jtoy.net/portfolio/
I'm working on the next version to make it more useful, but all the technology is not there yet, I want the robot to be able to understand speech and talk back to users. I also want the robot to be able to play games with people. I think the platform has a lot of potential. I want Google to release a low power tensor processing unit made for the pi to make this more useful. This will open up a lot of doors for robot and AI enthusiasts. I'm looking to turn this into a platform, contact me if this is of interest to you.
I'm extremely interested in using autonomous driving and computer vision for a lawnmower. I hate mowing my lawn. I hate mowing my lawn enough to program a robot to mow it for me.
Since you control the machine and your yard, you can use cameras mounted to your house for tracking. You don't want smart, you want dumb and predictable. But good luck making something with a rapidly spinning blade safe while unsupervised.
It's probably cheaper to hire a landscape maintenance company, or a neighborhood teenager.
Nah. What we really want and need is a robot that while it mows the lawn, turns it into: its entire energy source, its entire pool of building blocks for daily (nightly?) self-repairs, for reproduction, for producing oh maybe fluffy warm wool and delicious milk/cheese/butter as a side product, and fertilizes the land from the occasional .. discharge resulting from perpetual energy production-consumption and internal cleanups/repairs, finally as it still does wear down as all physical assemblages are wont to with time, it leaves behind highly durable inputs for sturdy clothing and stylish home decoration (horns, hides, leather etc)!
All from a friggin lawn.
Roboruminant 2.0 baby. Need to reinvent mammalian evolution before we can really reinvent the wheel!
I'd be worried about the rope breaking! Sitting there watching it mow is better than actually mowing myself, but I mostly want the time back. My yard is way too big for my self-propelled electric lawn mower. I don't want to spend 1.5 hours every Saturday anymore.
If you hate it so much, I would recommend instead buying one of the autonomous lawn mowers that have been on the market for years now, set it and forget it. (Maybe take it in for the winter.)
I've heard good things about the Husqvarna 450 especially.
Spoiler alert: there is no computer vision involved, still works perfectly even for large lawns; our local university even uses them in campus parks.
To clarify: it's that sound/guy saying "Oh yeah..." in slow-motion, sexy hahaha, greased up lawn mower guy and Pierce Brosnan, no sun laser for this guy.
I realize the point of the article and many of the comments are about using homebrew ML/computer vision, but if you want something quick and easy, commercially available robot lawn mowers already exist. However, they tend to use boundary wires rather than any sort of vision system (some have gps, but I'm not sure if that's supplemental or can be used alone) though I think some have obstacle sensors for safety.
That would be great! I bought a kit of accessories for the arduino/rpi for my son. He's really getting into building simple robots from Lego Technic. It would be great to incorporate some more advanced projects into his list.
just today i was fantasizing about a self-driving autonomous office coffee machine. basically a roomba that brews coffee. perfect for hardcore introverts.
I always said the hallmark of a great tool is something that can do 50 things in a shitty way. "ALEXA. ALEXA. SIRI! OKAY GOOGLE? Come here self-driving roomba. Play NPR podcasts and brew me a tepid cup of brown Keurig water while engaging me in a rousing game of Go"
Hey Jason, I'm working on a platform where people can control other people's robots. We're leveraging crowd intelligence as opposed to artificial intelligence, but we'd like to incorporate artificial intelligence soon. Perhaps you'd have some interest to check it out. We're at http://runmyrobot.com.
This is not what I expected when I read your comment. I was expecting a platform where you upload the parameters of a hardware system, the platform digitizes that system into a virtual sandbox, and people can then write arbitrary programs for that system and showcase them in the sandbox, where the uploader can buy, comment, and rate those programs. Something along the lines of https://openai.com/blog/
I'm wondering why we don't see robotic chips and pretrained models that solve basic tasks such as vision, audio, NLP and behavior. We already have good models for all of them, but no simple way to mix and match. It would be great if this evolved into an open-source bazaar of neural net models and hardware parts.
This is why I've invested in Nvidia and a bit in AMD. My assumption is they will get into this business. Their first product would most likely be some vision processor for self driving cars.
I play with RPis and I make NNs with TensorFlow, so I took the survey. Pretty standard "tell us what you think" type of thing. If it leads to Google maintaining an official binary release of TF for the RPi, that would be great.
The article conveys almost no information. Why speech synthesis, NLP and so on are called AI? What's special with Raspberry Pi, isn't it a regular general-purpose computer, just of small size? Will it be run locally or on Google servers? Why BBC has articles of so poor quality?
The Pi has exposed IO pins so you can use it to control just about anything that uses electricity.
There are two basic groups of users. People looking for a cheap small computer to use for education, gaming, etc. And those who use the Pi as a controller for other projects.
I'm using one as the controller for an open source coffee maker called Mugsy as well as another start up in the music education space.
Im currently cleaning up the code, models and parts list for public release. Mailing list subscription is on heymugsy.com. Email is on my profile if you have specific questions.
While speech synthesis is okay, NLP is a problem largely unsolved. We need to improve reasoning, attention and memory, and also to ground concepts in perceptual data.
Perhaps this is just my overall distrust speaking, but as a RPi hobbyist who plans to use solid projects such as OpenCV in the near future, I have an overwhelming fear that Google will release "better" "open-source" projects that will push out maintainers of the projects we know, all with the intention of adding their Analytics(TM) in future updates with the stipulation that not updating your projects introduces you to a Dependency Hell if they work with other projects you need to add.
Tired of seeing this article when the word AI doesn't appear once in the article and its just an announcement for untold mysteries sometime in the future....
Just saw this - I'm working on getting some internal funding for this idea. We have some robotics and deep learning SIGs in our company so it might just work out.
Sounds cool! I wonder if this will be with TensorFlow. If so, does the RPis videocore have any capability to accelerate such things or not out of interest.
I know from a few years ago that there was some work at doing GPGPU-type work on the Raspberry Pi's video hardware. This is a project that I remember reading about, but didn't look into deeply: https://www.raspberrypi.org/blog/accelerating-fourier-transf...
A lot of people do, though. I don't understand why; there are a ton of other Android-capable devices already out there to choose from at similar price and performance levels.
There are a few "Android on the Pi" projects around. They all need work before they're remotely useable. Frankly, I wish there was at least one high-quality project to point people to.
Since the article doesn't have any information whatsoever, here's my prediction: by "bringing AI to Raspberry Pi" they mean being able to call their cloud APIs from there.
TensorFlow is not suitable for anything practical on the Pi. You can certainly get it to run there, but CPU vector math on resource constrained devices is not going to be a forte for a framework designed primarily for quickly iterating over models on a GPU workstation or a multi-GPU server. TF very much likes to have a very beefy GPU.
You can already call whichever APIs you like from a Raspberry Pi. This announcement must be about doing something new on the Raspberry Pi (for instance, compiling TensorFlow to ARM if that isn't already supported). Perhaps the use-case is a fleet of Raspberry Pis?
:-) I know what inference is. It's just that the speed of inference very much depends on the model you're doing the forward pass on, and the phrase "inference can be run at 10fps" is non-sensical without also specifying the model.
I understand by your name that you may be a neural net enthusiast, but I would question how much practical experience you have.
It's a perfectly valid statement to say that a pi will run inference on 90% of the models out there, and I have experience with the same. It would be similar to claiming that (if it could), a pi could run 90% of the games out there.
Once again, I am speaking from practical experience from having implemented tensorflow neural nets on low power devices. And I sincerely get the feeling that although you're enthusiastic, you have no clue what you're talking about.
Rather than making offhand comments like facepalm, I would challenge you to either offer up some evidence to the contrary (you could start by trying to find a tensorflow model that a pi wont run), or spend more of your time doing something more practical than acting like a clueless rabid fanboy.
I believe what general_ai means is that running models is not the issue here, it's about the FPS. NVidia has special GPUs on the TX1 and TK1 for this. Ability to run a model is about having enough memory for it. Ability to apply a model to a real time task is about having the compute, which for most tasks the Pi doesn't have. IIRC Pete Warden had ported some low level ops to the Pi GPU a few years ago, a difficult task.
This is why it is likely that what Google has in store is a form of inferenve-bound co-processor resembling their TPU.
Many people know what they are talking about on this thread, you just need to pay attention I believe. There's high demand for embedded deep learning at the moment, and I've already shipped several systems for a variety of tasks. At the moment none could live at required speed on the Pi.
feelix - what kind of models do you typically run? I've spent a fair amount of time getting Neural Nets to run on Raspberry Pis and other platforms. In my experience it's possible to do inference with most models but often it's intolerably slow. For example the stock inception model that comes as a demo in the tensorflow code base takes about 10 seconds per image to do inference on my Pi 3. What domains are you typically working in? Do you have some tricks to make things run faster?
It is indeed slow (of course, pretty much everything is slow on something like a Pi). But It's still fast enough for some uses. If you can even get one inference every 5 seconds that still has a lot of applications. And that was what I was saying when I said that I don't agree with the assumption that google are working on giving TensorFlow cloud support for all of their support of the Pi. Running locally could have a lot of uses too.
Besides which, they have been implementing things like 8 bit graphs for processing on low power devices. That should result in a large performance increase for these devices. I tried it on mobile and I got decent FPS (I can't remember the exact figure) by using it. https://www.tensorflow.org/versions/r1.0/how_tos/quantizatio...
I saw a demonstration (about 2 years ago) of an mobile ARM powered offline voice recognition platform, faster than Google and more accurate.
There was a side by side with Google's online voice recognition and it out performed in speed and accuracy on a mobile GPU/CPU. Complete with an actual learning system. That is truer to an AI for the Raspberry Pi, not to mention addressing privacy concerns.
If this is a glorified API / Cloud adapter rather than a true AI, what is it really?
I like the idea of this - doing all the processing/ML client side. I know Apple has started doing this recently (object/scene recognition & search in Photos app), but appreciate that this process occurs on my device rather than on say, Google's servers...
I have a strong feeling that quite a bit of R&D has been going toward Apple's upcoming chip, which will likely have a custom GPU architecture optimized for deep learning (of which Siri will also greatly benefit from) and augmented reality - like the custom HPU in Hololens. Apple's "Lens" wearable will probably pair via W1 with an iPhone which will handle most of the processing. Perhaps they'll even have a custom 3D/depth sensor based on the PrimeSense tech they purchased....
We're on the cusp of consumer AR going mainstream, and it's exciting.
As far as I know since about 2 years ago translation and speech recognition on google phones are done with deep learning systems built into the phone -- a network connection isn't needed. However, I couldn't immediately find a source to verify. Can anyone confirm?
That's not the case. Today's translation and speech recognition systems are considerably larger than even the beefiest phones can sustain. There are some simple OCR models and word (not phrasal) translation systems that run on the device, but not speech recognition.
What are you basing this on? I have a nexus 5 and I just tested it. I turned on airplane mode, and used google translate with speech recognition. Can't quite tell if the translation is phrase based (looks good) and the speech recognition works well.
Bet you're right. I'm sure there's a big market available though for stuff like speech prompting for home automation and image analysis for robotics. Could also be a blended system where there's local object track with remote object identification.
Could be. But I bet this is just a pet project that a couple of engineers do in their spare time, so I wouldn't expect too much from it. I just don't see this as something Larry would care about one iota. And things that Larry doesn't care about tend to eventually die at Google. Case in point: Social.
Misleading title, Google hasn't brought AI tools for RPI; they are taking a survey on what they should bring to the community. Those who are yet to take survey, be informed it's a long survey. A coffee would be helpful.
I'm working on the next version to make it more useful, but all the technology is not there yet, I want the robot to be able to understand speech and talk back to users. I also want the robot to be able to play games with people. I think the platform has a lot of potential. I want Google to release a low power tensor processing unit made for the pi to make this more useful. This will open up a lot of doors for robot and AI enthusiasts. I'm looking to turn this into a platform, contact me if this is of interest to you.