I also have the 5 mPx picam. When your bot sees something GCVision doesn’t understand, the bot can just move closer to use the resolution it has.
“Use what you got” is one of my robotic pet-peeves. Everyone keeps solving problems with more hardware. I think the picam could end up replacing the IMU, distance sensors, PIR motion detectors, color detectors, light level sensors, and line following sensors. Hardware is often inexpensive, and software solutions are more complex, so “hardware-itis” is understandable.
I have done a few “real time, local vision” performance tests so far, and have found temperature to be a constraint for my RPi 3B mounted on the GoPiGo3 bot using OpenCV local processing. (The geometry only allows a 5 mm heatsink.) I have to drop the resolution to 320x240 and the frame rate to under 10fps.
I have not tested single frame local vision, except to notice not to try it when Carl is on his dock - the rapid fluctuation in load can confuse the “smart charger” into switching to trickle charging mode, which causes Carl to dismount early.
My original plan was to have Carl wander the house collecting snapshots of “interesting objects”, then analyze the photos while he was sitting on his dock charging, but that is not going to work. I will need to test sending them up to Google Cloud Vision Label API while he is on the dock.
The end goal, is to build an RDF DB of found objects in the bot’s environment, with context graph linkages including “when and specifically how I saw this object”, with an inferred “room where I saw this object”, and “position of object from room reference point” that could be used for localization, as well as for human-machine dialog.
I don’t want Carl to depend on cloud processing, and I don’t want to have to start paying a subscription for Carl. He already costs me $5-$8 per month for batteries. So far the longest lasting batteries have managed thee months running 24/7. Yesterday, I was thinking of using GCVision as a bootstrap knowledge acquisition method, that would eventually enable local processing with the DB. (I probably will not get to this goal before my GCVision trial funds expire.)
The possibilities are endless, but my abilities and dedication are finite.