Abusing a Cellphone Screen with Solenoids Posts High Score

This Raspberry Pi 2 with computer vision and two solenoid “fingers” was getting absurdly high scores on a mobile game as of late 2015, but only recently has [Kristian] finished fleshing the project out with detailed documentation.

Developed for a course in image analysis and computer vision, this project wasn’t really about cheating at a mobile game. It wasn’t even about a robotic interface to a smartphone screen; it was a platform for developing and demonstrating the image analysis theory he was learning, and the computer vision portion is no hack job. OpenCV was used as a foundation for accessing the camera, but none of the built-in filters are used. All of the image analysis is implemented from scratch.

The game is a simple. Humans and zombies move downward in two columns. Zombies (green) should get a screen tap but not humans. The Raspberry Pi camera takes pictures of the smartphone’s screen, to which a HSV filter is applied to filter out everything except green objects (zombies). That alone would be enough to get you some basic results, but not nearly good enough to be truly reliable and repeatable. Therefore, after picking out the green objects comes a whole chain of additional filtering. The details of that are covered on [Kristian]’s blog post, but the final report for the project (PDF) is where the real detail is.

If you’re interested mainly in seeing a machine pound out flawless victories, the video below shows everything running smoothly. The pounding sounds make it seem like the screen is taking a lot of abuse, but [Kristian] mentions that’s actually noise from the solenoids and not a product of them battling the touchscreen. This setup can be easily adapted to test out apps on different models of phones — something that has historically cost quite a bit of dough.

If you’re interested in the nitty-gritty details of the reasons and methods used for the computer vision portions, be sure to go through [Kristian]’s github repository where everything about the project lives (including the aforementioned final report.)

Continue reading “Abusing a Cellphone Screen with Solenoids Posts High Score”

The Most Immersive Pinball Machine: Project Supernova

Over at [Truthlabs], a 30 year old pinball machine was diagnosed with a major flaw in its game design: It could only entertain one person at a time. [Dan] and his colleagues set out to change this, transforming the ol’ pinball legend “Firepower” into a spectacular, immersive gaming experience worthy of the 21st century.

A major limitation they wanted to overcome was screen size. A projector mounted to the ceiling should turn the entire wall behind the machine into a massive 15-foot playfield for anyone in the room to enjoy.

 

With so much space to fill, the team assembled a visual concept tailored to blend seamlessly with the original storyline of the arcade classic, studying the machine’s artwork and digging deep into the sci-fi archives. They then translated their ideas into 3D graphics utilizing Cinema4D and WebGL along with the usual designer’s toolbox. Lasers and explosions were added, ready to be triggered by game interactions on the machine.

pinnball-ocr-comp

To hook the augmentation into the pinball machine’s own game progress, they elaborated an elegant solution, incorporating OpenCV and OCR, to read all five of the machine’s 7 segment displays from a single webcam. An Arduino inside the machine taps into the numerous mechanical switches and indicator lamps, keeping a Node.js server updated about pressed buttons, hits, the “Lange Change” and plunged balls.

The result is the impressive demonstration of both passion and skill you can see in the video below. We really like the custom shader effects. How could we ever play pinball without them?

Continue reading “The Most Immersive Pinball Machine: Project Supernova”

Raspberry Pi As Speed Camera

Wherever you stand on the topics of road safety and vehicle speed limits it’s probably fair to say that speed cameras are not a universally popular sight on our roads. If you want a heated argument in the pub, throw that one into the mix.

But what if you live in a suburban street used as a so-called “rat run” through route, with drivers regularly flouting the speed limit by a significant margin. Suddenly the issue becomes one of personal safety, and all those arguments from the pub mean very little.

Sample car speed measurements
Sample car speed measurements

[Gregtinkers]’ brother-in-law posted a message on Facebook outlining just that problem, and sadly the local police department lacked the resources to enforce the limit. This set [Gregtinkers] on a path to document the scale of the problem and lend justification to police action, which led him to use OpenCV and the Raspberry Pi camera to make his own speed camera.

The theory of operation is straightforward, the software tracks moving objects along the road in the camera’s field of view, times their traversal, and calculates the resulting speed. The area of the image containing the road is defined by a bounding box, to stop spurious readings from birds or neighbours straying into view.

He provides installation and dependency instructions and a run-down of the software’s operation in his blog post, and the software itself is available on his GitHub account.

We’ve had a lot of OpenCV-based projects but haven’t featured a speed camera before here on Hackaday. But we have had a couple of dubious countermeasures, like that humorous attempt at an SQL injection attack, or a flash-based countermeasure.

Add A Slide Show To Your Fish Tank

Once in a way we get a hack that makes us wonder – why didn’t we think of that ? [hydronics] tore apart an old LCD monitor and built a fish tank around it. Not sure if the fish notice that they are swimming on the Moon, but it sure makes for an interesting fish tank display.

He starts by ripping apart an old 19″ LCD monitor and built an acrylic fish tank around the display. The backlight of the panel is fixed at the rear side of the fish tank, along with the rest of the electronics from the old monitor.

For an earlier version, he built his own back light, but the second version with the original back light turned out much better. The fish tank pieces were joined together using acrylic glue and left over night to dry, although he still needed to use some silicone to plug leaks.

A Raspberry Pi connected to the monitor’s HDMI input provides the background slide show. [Tony Rieker] helped add bubble animations via some OpenCV code running on the Pi. A live feed of the fish is overlaid on the slide show, adding a level of inception to this tricked up fish tank. The project was recently shown off at the Portland Winter Light Festival.

Continue reading “Add A Slide Show To Your Fish Tank”

Measuring Capacitance Against Voltage

Ceramic capacitors are pretty much the pixie dust of the electronics world. If you sprinkle enough of them on a circuit, everything will work. These ceramic capacitors aren’t the newest and latest technology, though: you can find them in radios from the 1930s, and they have one annoying property: their capacitance changes in relation to voltage.

This is a problem if you’re relying on ceramic caps in an RC filter or a power supply. What you need is a device that will graph capacitance against voltage, and [limpkin] is here to show you how to do it.

Of course capacitance is usually measured by timing how long it takes to charge and discharge a cap through an RC oscillator. This requires at least one known value – in this case a 0.1% resistor – by measuring the time it takes for this circuit to oscillate, an unknown capacitance can be calculated.

That’s all well and good, but how do you measure capacitance against a bias voltage? EDN comes to save the day with a simple circuit built around an op-amp. This op-amp is just a comparator, with the rest of the circuit providing a voltage directly proportional to the percentage of charge in the capacitor.

This little project is something [limpkin] has turned into a Kickstarter, and it’s something we’ve seen before. That said, measuring capacitance against a voltage isn’t something any ‘ol meter can do, and we’re glad [limpkin] could put together an easy to use tool that measures this phenomenon.

Texel: Art Tracks You, Tracks Time

French robot-artist [Lyes Hammadouche]  tipped us off to one of his latest works: a collaboration with [Ianis Lallemand] called Texel. A “texel” is apparently a time-pixel, and the piece consists of eight servo-controlled hourglasses that can tip themselves over in response to viewers walking in front of them. Besides making graceful wavelike patterns when people walk by, they also roughly record the amount of time that people have spent looking at the piece — the hourglasses sit straight up when nobody’s around, resulting in a discrete spatial representation of people’s attentions to the piece: texels.

We get jealous when we see artists playing around with toys like these. Texel uses LIDAR scanners, Kalman-filtered naturally, to track the viewers. openFrameworks, OpenCV, and ROS. In short, everything you’d need to build a complex, human-interactive piece like this using completely open-source tools from beginning to end. Respect!

Continue reading “Texel: Art Tracks You, Tracks Time”

Creating Video Trails In OpenCV

The video trail effect is nothing new: it was first used in music videos like “Blame it on the boogie” from the Jackson 5 in 1978. Now,  [Antonio Ospite] has put together a nice article that shows the basics of using OpenCV to create this effect in live video. He used the open source video processing package OpenCV for this, creating the effect with a short script. It can run in multiple ways, creating video trail effects, or “catch-up”trails (where the trail reverses into a final frame).

This provides an interesting example of how these video effects have become so much easier to create. The Jackson 5 video was created using a Scanimate and Quantel Paintbox system that was as big as a closet and cost hundreds of thousands of dollars. Now, you can create these effects with free software and a cheap PC. Now you just need to figure out what in our modern world looks awesome with this throwback effect.

Continue reading “Creating Video Trails In OpenCV”