Skip navigation
1 2 3 Previous

RoadTests & Reviews

263 posts
The next neural network that I'm going to try is a variant of Tiny-YOLO.  The You Only Look Once (YOLO) architecture was developed to create a one step process for detection and classification.  The image is divided into a fixed grid of uniform cells and bounding boxes are predicted and classified within each cell.  This architecture enables faster object detection and has been applied to streaming video.   The network topology is shown below.  The pink colored layers h ...
Before I move on to object detection I thought I would try one more example of object classification using a more complex neural network based on the Multi-layer offload architecture.  The network used is a variant of the DoReFa-Net and uses the large ImageNet dataset http://www.image-net.org/  for training.  The DoReFa-Net https://arxiv.org/pdf/1606.06160 is a low bitwidth convolutional neural network that is trained with low bitwidth gradients optimized for implementation on har ...
After my previous blog post it was pointed out to me that the amount of whitespace (or other non-object pixels, i.e. background) that I had in my captured image was affecting the accuracy of the classification.  I did a quick inverse test that was suggested by beacon_dave and added whitespace around the CIFAR-10 test image and it then classified as an airplane!  I guess this makes sense as there are a lot of extraneous pixels to confuse the classifier.  In general purpose use of a ...
In the previous blog PYNQ-Z2 Dev Kit - CIFAR-10 Convolutional Neural Network , I verified the 3 hardware classifiers against the reference "deer" test image.  Now I'm going to see how the classifiers perform with captured webcam images.  I expect the performance will be degraded because the webcam will produce lower quality images due to issues like image brightness and focus.  CIFAR-10 has a small training set (5000 images per class), so I'm going to use a solid background to hel ...
The first neural network implementation that I'm going to look at is for CIFAR-10 (Canadian Institute For Advanced Research).  CIFAR-10 is a computer vision dataset used to train and test neural networks for object recognition.  The CIFAR-10 data consists of 60,000 32x32 color images in 10 classes, with 6000 images per class. There are 50,000 training images and 10,000 test images.   Labeled Image Classes airplane automobile bird cat deer dog frog horse ship truck   ...
Introduction What is a Data Acquisition System? Market Review Cost of Ownership Module Types Build Quality Power Consumption Tests Performance Tests Operation with the BenchVue software. Summary Introduction  This is my opening blog on the DAQ970A data acquisition unit that I was lucky enough to be selected to road test. This is a general blog, with my intention to introduce the DAQ970A.   I didn't really do an unboxing as they don't do an awfu ...
Introduction  As Particle introduced their third generation of hardware. The Particle Argon, Boron, and Xenon are Particle’s latest offering in the world of IoT dev boards, and this time they add mesh networking. The three new boards are all built around the Nordic nRF52840 SoC and include an ARM Cortex-M4F with 1MB of Flash and 256k of RAM. This chip supports Bluetooth 5 and NFC. Breaking the new lineup down further, the Argon adds WiFi with an ESP32 from Espressif, the Boron brings ...
One of the technical areas that I am interested in is object detection in video streams.  The specific application is the real-time identification of objects in video from IP surveillance cameras.  As part of the PYNQ-Z2 roadtest I want to see how well an FPGA implementation of a neural network works for this task.  A key to an efficient implementation (power and area) in programmable logic is quantization.  I came across an interesting paper on quantization while researching ...
I thought that I'd try out another of the basic overlays before moving on to a neural network application.   The PYNQ development software provides a set of logic tools using the logictools overlay.  You can create a digital circuit by specifying its function and IOs with a simple, declarative API in Python.   The logictools overlay has 3 function generators plus a trace analyzer to capture generated patterns. Boolean Generator - up to 26 independent Boolean functions of up to ...
I'm continuing my exploration of the base overlay to control the external peripheral interfaces on the PYNQ-Z2.  The 3 interfaces are the Pmod, Arduino, and Raspberry Pi which are each controlled through a separate soft-core Microblaze processor.  The MicroBlaze instances are referred to as IO Processors (IOP) and there are actually 4 IOPs in the base overlay as there are 2 PMODs (A/B), the Arduino IO, and the Raspberry Pi IO.  PmodA  shares its 8 data pins with the RPi inter ...
The MCIMX7ULP-EVK is the i.MX 7ULP Evaluation Kit, which provides a platform for rapid application development using the i.MX 7ULP, featuring NXP's advanced implementation of the Arm® Cortex®-A7 core, the Arm Cortex-M4 core, as well as 3D and 2D Graphics Processing Units (GPUs). Recently, I got a chance to test drive.     In June 2019, NXP released an addition to their i.MX 7 Series, the i.MX 7ULP, which is the latest achievement in ultra-low-power processing for use cases ...
Course module 12 finishes up by implementing a weather station device using the the Environmental sensors and the BLE device.  This course module is another example of the course not being finished before it was released.  There are 3 lab videos, the first one is a combination of the following two and probably should have been deleted.   In module 11 I encountered a problem where the device did not seem to be advertising its BLE characteristics.  I wondered if this could be ...
Course module 11 describes connecting things to the Internet and Cloud services.   I think the proof reader didn't get to these slides .  In the Module syllabus, I don't think that "Try to keep bullets short and to a minimum" was a topic.  And on the topic of IPv6, I think the world's population must have exploded if each person can only get 4000 addresses.     The proliferation of network devices - driven by mobile phones and IoT devices has necessitated the adoptio ...
In this post, I examine in a little more detail how well the Sensor Cube and the Wireless hub's antennas and wireless communication can work. In talking with lui_gough and others, there may be some distance limitations that are not as good as they could be. This is written as a follow up to my recent Road Test of the IDT Wireless evaluation kit as the official evaluation period is closed now.     I came up with a few simple tests which I will show the results of below. For the sign ...
As an introduction to FPGA programming the PYNQ-Z2 provides FPGA overlays.  An overlay is a generic FPGA design that provides some specific functionality, in essence a hardware library.  An overlay is generally programmed via a software abstraction layer that has a defined API.  The PYNQ-Z2 has a base overlay that provides access to its onboard and external peripheral interfaces via Python.  The base overlay bitstream is loaded when the PYNQ-Z2 boots up, so its functions are ...

Filter Blog

By date: By tag: