Tracking Drone Flight Path Via Video, Using Cameras We Can Get

Calculating three-dimensional position from two-dimensional projections are literal textbook examples in geometry, but those examples are the “assume a spherical cow” type of simplifications. Applicable only in an ideal world where the projections are made with mathematically perfect cameras at precisely known locations with infinite resolution. Making things work in the real world is a lot harder. But not only have [Jingtong Li, Jesse Murray et al.] worked through the math of tracking a drone’s 3D flight from 2D video, they’ve released their MultiViewUnsynch software on GitHub so we can all play with it.

Instead of laboratory grade optical instruments, the cameras used in these experiments are available at our local consumer electronics store. A table in their paper Reconstruction of 3D Flight Trajectories from Ad-Hoc Camera Networks (arXiv:2003.04784) listed several Huawei cell phone cameras, a few Sony digital cameras, and a GoPro 3. Video cameras don’t need to be placed in any particular arrangement, because positions are calculated from their video footage. Correlating overlapping footage from dissimilar cameras is a challenge all in itself, since these cameras record at varying framerates ranging from 25 to 59.94 frames per second. Furthermore, these cameras all have rolling shutters, which adds an extra variable as scanlines in a frame are taken at slightly different times. This is not an easy problem.

There is a lot of interest in tracking drone flights, especially those flying where they are not welcome. And not everyone have the budget for high-end equipment or the permission to emit electromagnetic signals. MultiViewUnsynch is not quite there yet, as it tracks a single target and video files were processed afterwards. The eventual goal is to evolve this capability to track multiple targets on live video, and hopefully help reduce frustrating public embarrassments.

[IROS 2020 Presentation video (duration 14:45) requires free registration, available until at least Nov. 25th 2020.]

Highly Sensitive Camera Makes A Great Night Vision Scope

Traditional military-grade nightvision gear has a history stretching back to the Second World War, relying on photomultiplier tubes to help soldiers see in the dark. Such devices have trickled down to the civilian market in intervening years, however other simpler techniques can work too. [Happy_Mad_Scientist] whipped up a simple nightvision monocular using a very sensitive camera instead.

Due to the high noise, still photos don’t do it justice. The video quality is highly impressive for a system running with no IR illumination.

The camera in question is the Runcam Night Eagle 2, prized for its 0.00001 lux sensitivity. Black and white only, its capable of providing vision in moonlight and starlight conditions without external illumination. In this project, it’s hooked up to a monocle display designed for use with drone FPV setups. With lithium batteries and a charge circuit hooked up, and everything stuffed inside a compact 3D printed case, the final result is a portable, pocket sized night vision device for under $200 USD.

[Happy_Mad_Scientist] notes that in starlight conditions, it provides an advantage over other nighttime Airsoft players relying on IR illumination to see in the dark. We can imagine it would perform well in concert with a bright IR headlamp for those times when there’s simply no ambient light available – particularly indoors.

If your tastes are more military-spec, consider this teardown of a high-end Norweigan device. Video after the break.

Continue reading “Highly Sensitive Camera Makes A Great Night Vision Scope”

Making A 3D Printed DSLR Camera Mount Even Better

We’d love to say that all of our projects worked perfectly on the first try, but the average Hackaday reader is a bit too experienced to buy a fib like that. The reality is, DIY projects rarely get everything right out of the gate. It takes some time to identify issues and work out all the kinks. But of course, that’s half the fun.

For a perfect example of this process, check out the latest update on the 3D printed DSLR camera mount that [isaac879] has been working on. When we last checked in with this project over the summer the mount was already impressive, but with the latest improvements and the addition of a whole new axis of movement, this homebrew camera motion system is an extremely compelling project for anyone who wants to take their project videos to the next level.

The new Hall effect sensor mounts are a very nice touch.

Back in June, the mount [isaac879] showed off was only capable of pan and tilt. But as you can see in the video after the break, he’s since mounted that to a track made of 20×40 aluminum extrusion and added another stepper motor. This allows the pan/tilt mount to move itself back and forth on the track to get those slick panning shots that all the cool kids use in their videos nowadays.

But even if you’re not interested in the slider aspect, the core pan/tilt mount has also received a number of refinements over the last few months. Perhaps the most obvious is the switch over to thinner and lighter stepper motors. Reducing mass is always an improvement with a moving system like this, and in the case of the pan motor, the shorter can prevents a potential collision with the camera itself. Obviously the smaller motors are weaker, but [isaac879] considers that a feature; the mini motors will just start skipping steps if things get bound up instead of potentially damaging your expensive camera.

He’s switched to flange bearings to help hold the frame together, improved wire routing, added a mounting point for the electronics, reprinted the pinion gears in a flexible filament to help absorb some vibrations, and switched over to TMC2208 stepper drivers. The new drivers may actually be one of the biggest usability upgrades, as they allow the entire mount to move faster and more accurately. Critically, [isaac879] also reports the new drivers have solved a troublesome vibration issue he was seeing when the camera was moving slowly.

Obviously you can throw together a simple pan and tilt mount with a couple of servos and some zip ties if you only need to use it once or twice, but a project of this caliber would rightfully become a permanent fixture in your workspace. Perfect if you’re looking to up your project photography game.

Continue reading “Making A 3D Printed DSLR Camera Mount Even Better”

The Game Boy Camera, Or: How I Learned To Stop Worrying And Love The Pixels

Never underestimate the power of nostalgia. In an age when there are more megapixels stuffed in the sensor of a smartphone camera than the average computer display can even represent, why would jagged images from a 20-year-old grayscale camera with pixels numbering in the thousands still grab attention? Maybe what’s old is new again, and the coolness factor of novelty is something that can’t be quantified.

The surprise I had last Monday when I saw my Twitter notifications is maybe only second to the feeling I had when I was invited to become a Hackaday contributor. I’d made a very simple web app which mimics a Game Boy Camera using the camera from your phone or desktop, and it got picked up by people so much that I’m amazed my web host is still holding. Let’s look at why something seemingly so simple gained so much traction.

Continue reading “The Game Boy Camera, Or: How I Learned To Stop Worrying And Love The Pixels”

Proprietary Lenses Are No Problem With This USB Adaptor

There was a time when a camera lens was simply a set of shaped pieces of glass in a tube, with a mount and an aperture. But as cameras have embraced electronics ever more, technology has found its way past the lens mount to the extent that all features of a modern lens are electronically controllable. Can they be used outside the confines of the camera they were designed for? If the user is [Jana Marie] then certainly, because she’s created a nifty USB adapter and mount for Canon lenses for use with her custom streaming camera.

The hardware is a 3D printed lens mount with a PCB that mates with the pins on the lens. An STM32 does the hard work and talks to the outside world through a USB interface, however it’s in the software that the real effort lies. The Canon lens protocol has been extended since the 1980s, and the commands for different generations of lenses can be convoluted. All the information is in a GitHub repository, so the curious hacker can roll their own.

There are a wealth of camera projects to be found for those that don’t mind tearing apart some of their more valuable possessions, and this isn’t the first we’ve seen involving the hacking of the Canon protocol.

How To Shoot A Great Project Video

Creating projects is fun, but the real value, as far as the imaginary Internet points are concerned, is how well you show them off for the clout. Taking a few snaps is fine, but if you want to produce a quality video of your project, it pays to put some thought and effort into the process.

Telling The Story

Before setting out to document your project on video, think about what you’re trying to communicate to the viewer. Are you attempting to create a step-by-step guide on how to recreate what you’ve done, or are you simply trying to show off the awesome finished product? These are two very different types of video, and will require different content and delivery entirely. It also guides how you shoot your video.

If you want to show off your build process, you’ll need to shoot as you go. This can be time consuming, but also a great way to show the reality of what goes into your work. I always like it when people convey the pitfalls and successes they faced along the way, and get people involved in the story. It also means that you’ll end up shooting a lot of footage and you’ll spend plenty of time editing it all together. Continue reading “How To Shoot A Great Project Video”

Vizy “AI Camera” Wants To Make Machine Vision Less Complex

Vizy, a new machine vision camera from Charmed Labs, has blown through their crowdfunding goal on the promise of making machine vision projects both easier and simpler to deploy. The camera, which starts around $250, integrates a Raspberry Pi 4 with built-in power and shutdown management, and comes with a variety of pre-installed applications so one can dive right in.

The Sony IMX477 camera sensor is the same one found in the Raspberry Pi high quality camera, and supports capture rates of up to 300 frames per second (under the right conditions, anyway.) Unlike the usual situation faced by most people when a Raspberry Pi is involved, there’s no need to worry about adding a real-time clock, enclosure, or ensuring shutdowns happen properly; it’s all taken care of.

‘Birdfeeder’ application can automatically identify and upload images of visitors.

Charmed Labs are the same folks behind the Pixy and Pixy 2 cameras, and Vizy goes further in the sense that everything required for a machine vision project has been put onboard and made easy to use and deploy, even the vision processing functions work locally and have no need for a wireless data connection (though one is needed for things like automatic uploading or sharing.) For outdoor or remote applications, there’s a weatherproof enclosure option, and wireless connectivity in areas with no WiFi can be obtained by plugging in a USB cellular modem.

A few of the more hacker-friendly hardware features are things like a high-current I/O header and support for both C/CS and M12 lenses for maximum flexibility. The IR filter can also be enabled or disabled via software, so no more swapping camera modules for ones with the IR filter removed. On the software side, applications are all written in Python and use open software like Tensorflow and OpenCV for processing.

The feature list looks good, but Vizy also seems to have a clear focus. It looks best aimed at enabling projects with the following structure:

Detect Things (people, animals, cars, text, insects, and more) and/or Measure Things (size, speed, duration, color, count, angle, brightness, etc.)

Perform an Action (for example, push a notification or enable a high-current I/O) and/or Record (save images, video, or other data locally or remotely.)

The Motionscope application tracking balls on a pool table. (Click to enlarge)

A good example of this structure is the Birdfeeder application which comes pre-installed. With the camera pointed toward a birdfeeder, animals coming for a snack are detected. If the visitor is a bird, Vizy identifies the species and uploads an image. If the animal is not a bird (for example, a squirrel) then Vizy can detect that as well and, using the I/O header, could briefly turn on a sprinkler to repel the hungry party-crasher. A sample Birdfeeder photo stream is here on Google Photos.

Motionscope is a more unusual but very interesting-looking application, and its purpose is to capture moving objects and measure the position, velocity, and acceleration of each. A picture does a far better job of explaining what Motionscope does, so here is a screenshot of the results of watching some billiard balls and showing what it can do.