Being able to do all this well, and in some cases better than humans, is a recent development. Creating photorealistic images is only a few months old. So how did all this come about?
Every once in a while a project comes along with that magical power to consume your time and attention for many months. When you finally complete it, you feel sorry that you don’t have to do anything more.
What is so special about this Bingo ball reader? It may seem like an ordinary OCR project at first glance; a camera captures the image and OCR software recognizes the number. Simple as that. And it works without problems, like every simple gadget should.
But then again, maybe it’s not that simple. Numbers are scattered all over the ball, so they have to be located first, and the best candidate for reading must be selected. Then, numbers are painted onto a sphere rather than a flat surface, sometimes making them deformed to the point where their shape has to be recovered first. Also, the angle of reading is not fixed but somewhere on a 360° scale. And then we have the glare problem to boot, as Bingo balls are so shiny that every light source reflects as a saturated bright spot.
So, is that all of it? Well, almost. The task is supposed to be performed by an embedded microcontroller, with limited speed and memory, yet the recognition process for one ball has to be fast — 500 ms at worst. But that’s just one part of the process. The project includes the pipelined mechanism which accepts the ball, transports it to be scanned by the OCR and then shot by the public broadcast camera before it gets dumped. And finally, if the reading was not reliable enough, the ball has to be subtly rotated so that the numbers would be repositioned for another reading attempt.
Despite these challenges I did manage to build this system. It’s fast and reliable, and I discovered some very interesting tricks along the way. Take a look at the quick demo video below to get a feel for the speed, and what the system “sees”. Then join me after the break to dive into the details of this interesting embedded build.
Last week, the Blackbelt 3D printer launched on Kickstarter. What makes the Blackbelt 3D printer different than any other 3D printer on Kickstarter? This printer has an infinite build volume. It’s built for continuous production. As long as you have a large enough spool of filament, this printer will keep producing plastic parts with no downtime in between. The Blackbelt is a truly remarkable and innovative machine. Yes, it’s a bit expensive, but it’s designed for production and manufacturing, not some guy tinkering in his garage.
However, the Blackbelt 3D website includes two words that have sent the 3D printer community into an uproar. ‘Patent Pending’ is something no one in the community wants to see given the history of the industry and a few poor decisions from the first movers during the great 3D printer awakening of 2010. The idea of an infinite build volume printer that allows for continuous production is not new; we saw one last March at the Midwest RepRap Festival. The question, therefore, is what is covered by the upcoming Blackbelt patents, what is the prior art, and is it still possible to build an Open Source printer that uses these innovative techniques?
It seems to be a perennial feature of our wider community of hackers and makers, that television production companies come up with new ideas for shows featuring us and our skills. Whether it is a reality maker show, a knockout competition, a scavenger hunt, or any other format, it seems that there is always a researcher from one TV company or another touting around the scene for participants in some new show.
These shows are entertaining and engaging to watch, and we’ve all probably wondered how we might do were we to have a go ourselves. Fame and fortune awaits, even if only during one or two episodes, and sometimes participants even find themselves launched into TV careers. Americans may be familiar with [Joe Grand], for instance, and Brits will recognise [Dick Strawbridge].
It looks as if it might be a win-win situation to be a TV contestant on a series filmed in exotic foreign climes, but it’s worth taking a look at the experience from another angle. What you see on the screen is the show as its producer wants you to see it, fast-paced and entertaining. What you see as a competitor can be entirely different, and before you fill in that form you need to know about both sides.
A few years ago I was one member of a large team of makers that entered the UK version of a very popular TV franchise. The experience left me with an interest in how TV producers craft the public’s impression of an event, and also with a profound distrust of much of what I see on my screen. This prompted me to share experiences with those people I’ve met over the years who have been contestants in other similar shows, to gain a picture of the industry from more than just my personal angle. Those people know who they are and I thank them for their input, but because some of them may still be bound by contract I will keep both their identities and those of the shows they participated in a secret. It’s thus worth sharing some of the insights gleaned from their experiences, so that should you be interested in having a go yourself, you are forewarned. Continue reading “Hacking On TV: What You Need To Know”→
I normally stay away from talking about x86 single-board computers because I don’t have a lot to say about them. They’re too expensive, and run too hot, to be interesting. Enter the new UP Core funding now on Kickstarter.
The UP Core is just 56.5 mm × 66 mm (2.2 in × 2.6 in) and powered by a 64-bit Quad Core Intel Atom clocked at either 1.44 GHz or 1.92 GHz. It will ship with either 2 GB or 4 GB of RAM, and either 32 GB or 64 GB of eMMC. The board has a USB 3 port, HDMI, DSI/eDP, and two MIPI-CSI ports supporting either a 2 MP or 8 MP camera. It has both WiFi 802.11 b/g/n and Bluetooth LE built-in.
In other words it’s powerful enough to serve as a desktop PC running Linux, Android, or a full Windows 10 installation. The cheapest UP Core configuration—with 1 GB memory and 16 GB eMMC—is €69, or around $75. Continue reading “First Thoughts On The New UP Core”→
It’s not too often that you see handkerchiefs around anymore. Today, they’re largely viewed as unsanitary and well… just plain gross. You’ll be quite disappointed to learn that they have absolutely nothing to do with this article other than a couple of similarities they share when compared to your neocortex. If you were to pull the neocortex from your brain and stretch it out on a table, you most likely wouldn’t be able to see that not only is it roughly the size of a large handkerchief; it also shares the same thickness.
The neocortex, or cortex for short, is Latin for “new rind”, or “new bark”, and represents the most recent evolutionary change to the mammalian brain. It envelopes the “old brain” and has several ridges and valleys (called sulci and gyri) that formed from evolution’s mostly successful attempt to stuff as much cortex as possible into our skulls. It has taken on the duties of processing sensory inputs and storing memories, and rightfully so. Draw a one millimeter square on your handkerchief cortex, and it would contain around 100,000 neurons. It has been estimated that the typical human cortex contains some 30 billion total neurons. If we make the conservative guess that each neuron has 1,000 synapses, that would put the total synaptic connections in your cortex at 30 trillion — a number so large that it is literally beyond our ability to comprehend. And apparently enough to store all the memories of a lifetime.
In the theater of your mind, imagine a stretched-out handkerchief lying in front of you. It is… you. It contains everything about you. Every memory that you have is in there. Your best friend’s voice, the smell of your favorite food, the song you heard on the radio this morning, that feeling you get when your kids tell you they love you is all in there. Your cortex, that little insignificant looking handkerchief in front of you, is reading this article at this very moment.
What an amazing machine; a machine that is made possible with a special type of cell – a cell we call a neuron. In this article, we’re going to explore how a neuron works from an electrical vantage point. That is, how electrical signals move from neuron to neuron and create who we are.
Despite the amazing feats a human brain performs, the neuron is comparatively simple when observed by itself. Neurons are living cells, however, and have many of the same complexities as other cells – such as a nucleus, mitochondria, ribosomes, and so on. Each one of these cellular parts could be the subject of an entire book. Its simplicity arises from the basic job it does – which is outputting a voltage when the sum of its inputs reaches a certain threshold, which is roughly 55 mV.
Using the image above, let’s examine the three major components of a neuron.
Soma
The soma is the cell body and contains the nucleus and other components of a typical cell. There are different types of neurons whose differing characteristics come from the soma. Its size can range from 4 to over 100 micrometers.
Dendrites
Dendrites protrude from the soma and act as the inputs of the neuron. A typical neuron will have thousands of dendrites, with each connecting to an axon of another neuron. The connection is called a synapse but is not a physical one. There is a gap between the ends of the dendrite and axon called a synaptic cleft. Information is relayed through the gap via neural transmitters, which are chemicals such as dopamine and serotonin.
Axon
Each neuron has only a single axon that extends from the soma, and acts similar to an electrical wire. Each axon will terminate with terminal fibers, forming synapses with as many as 1,000 other neurons. Axons vary in length and can reach a few meters long. The longest axons in the human body run from the bottom of the foot to the spinal cord.
The basic electrical operation of a neuron is to output a voltage spike from its axon when the sum of its input voltages (via its dendrites) crosses a specific threshold. And since axons are connected to dendrites of other neurons, you end up with this vastly complicated neural network.
Since we’re all a bunch of electronic types here, you might be thinking of these ‘voltage spikes’ as a difference of potential. But that’s not how it works. Not in the brain anyway. Let’s take a closer look at how electricity flows from neuron to neuron.
Action Potentials – The Communication Protocol of the Brain
The axon is covered in a myelin sheet which acts as an insulator. There are small breaks in the sheet along the length of the axon which are named after its discoverer, called Nodes of Ranvier. It’s important to note that these nodes are ion channels. In the spaces just outside and inside of the axon membrane exists a concentration of potassium and sodium ions. The ion channels will open and close, creating a local difference in the concentration of sodium and potassium ions.
We all should know that an ion is an atom with a charge. In a resting state, the sodium/potassium ion concentration creates a negative 70 mV difference of potential between the outside and inside of the axon membrane, with there being a higher concentration of sodium ions outside and a higher concentration of potassium ions inside. The soma will create an action potential when -55 mV is reached. When this happens, a sodium ion channel will open. This lets positive sodium ions from outside the axon membrane to leak inside, changing the sodium/potassium ion concentration inside the axon, which in turn changes the difference of potential from -55 mV to around +40 mV. This process in known as depolarization.
One by one, sodium ion channels open along the entire length of the axon. Each one opens only for a short time, and immediately afterward, potassium ion channels open, allowing positive potassium ions to move from inside the axon membrane to the outside. This changes the concentration of sodium/potassium ions and brings the difference of potential back to its resting place of -70 mV in a process known as repolarization. Fro start to finish, the process takes about five milliseconds to complete. The process causes a 110 mV voltage spike to ride down the length of the entire axon, and is called an action potential. This voltage spike will end up in the soma of another neuron. If that particular neuron gets enough of these spikes, it too will create an action potential. This is the basic process of how electrical patterns propagate throughout the cortex.
The mammalian brain, specifically the cortex, is an incredible machine and capable of far more than even our most powerful computers. Understanding how it works will give us a better insight into building intelligent machines. And now that you know the basic electrical properties of a neuron, you’re in a better position to understand artificial neural networks.
I’m always on the lookout for a quality addition to my lab that would respect my strict budget. Recently, I’ve found myself pushing the Hertz barrier with every other project I do and hence desperately wanted a high bandwidth scope. Unfortunately, only recently have 70 MHz to 100 MHz become really affordable, whilst a new quad channel oscilloscope in the 500 MHz to 1 GHz range still costs a fortune to acquire. My only option was to find an absolute miracle in the form of an old high bandwidth scope.
It seemed the Gods of Hand Me Down electronics were smiling upon me when I found this dumpster destined HP 54542C. It appeared to be in fairy good shape and was the Top Dog in its day. But something had to be broken right? Sure enough, the screen was clearly faulty and illegible. Want to know how I fixed it? Four letters: FPGA.