element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Sci-Pi Design Challenge
  • Challenges & Projects
  • Design Challenges
  • Sci-Pi Design Challenge
  • More
  • Cancel
Sci-Pi Design Challenge
Blog Pollinator Pollster, Part 4: Audio Challenges and 3D Design
  • Blog
  • Forum
  • Documents
  • Leaderboard
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Sci-Pi Design Challenge to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: soldering.on
  • Date Created: 11 Jun 2023 8:29 AM Date Created
  • Views 799 views
  • Likes 8 likes
  • Comments 2 comments
  • audio classification
  • raspberry pi pico
  • raspberry pi 4
  • pollinator pollster
  • sci-pi design challenge
Related
Recommended

Pollinator Pollster, Part 4: Audio Challenges and 3D Design

soldering.on
soldering.on
11 Jun 2023
Pollinator Pollster, Part 4: Audio Challenges and 3D Design

Pollinator Pollster (Powered by Pi)

Welcome to the fourth blog post of this project. This week some big decisions have had to be made about the direction of the project following the discovery that support has been pulled for the machine learning package on which the audio classification aspect of this project was based. In better news, I've finished the 3D design of the printed parts, and have started to make those.

3D Design Demonstration Video

Please see the below video for a walkthrough of the 3D design of this project.

You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

Project Plan

Some more green boxes this week, on the 3D design of course, and also posting live sensor data to the pi-hosted website (but more on that in a future post).

image

Audio Classification Challenges

Since the beginning of this project, the pollinator detection method was to be based on audio classifiers trained using TensorFlow Lite Model Maker, which is a library designed to simplify the training of a classifier based on TensorFlow Lite, a lightweight version of the well-known TensorFlow machine learning library. TensorFlow Lite is ideally suited for running on a sophisticated microcontroller such as the Raspberry Pi Pico and all of the initial research I did for this project pointed towards this as clearly the best choice for this project.

When starting to use TensorFlow Lite Model Maker, I would run into a strange bug during installation, where one installation step would loop constantly and even if left for hours - not complete. I tried a few potential workarounds, including trying an install on multiple different OS's; Ubuntu, Linux Mint, and also on Google Colab, which in theory is the best environment, but no luck!

Looking through the issues list on github against the library, I found this issue which explains the origin of the bug. Effectively, this is due to incompatibility of the library with Python 3.10, which for a time was fixable by rolling back Colab to use Python 3.9, however support for that version ended in mid-May. Like me, there are many concerned users expressing similar frustrations on github, although it has now come to light that support is being pulled generally for TensorFlow Lite Model Maker, with users being pointed towards the new 'MediaPipe Model Maker'.

This is a bit of a roadbump for the project as there was plenty of precedent of TensorFlow Lite Model Maker being deployed on Pi Pico-based projects, but this is not yet the case for MediaPipe. As my machine learning knowledge is fairly beginner, I am hesitant to pathfind this route, given that there are only ~3 weeks remaining until the competition deadline.

What is the alternative?

There are some other machine learning libraries which can be used with Pi Pico, although mainly suited for speech recognition, and none as well documented as TensorFlow Lite. For this reason I am currently exploring a more 'traditional' audio analysis approach, using libraries designed to apply methods such as the 'Fast Fourier Transform' to audio samples in order to conduct frequency analysis. I am relatively confident that the attributes of pollinators such as bumblebees which made them suitable candidates for machine learning recognition (ie a very recognisable acoustic fingerprint due to very different wing taxonomy to other insects) will mean that it will be possible to design a classifier based on frequency analysis in this way.

With all other major aspects of this project currently on track, this will be my main focus for now and I look forward to sharing the experiementation with you soon.

Until Next Time

In passing, a Raspberry Pi pro-tip I learned the hard way this week is make sure you use a good quality micro SD card! I decided to be cheap and re-use an old unbranded card with the Raspberry Pi 4 and it became corrupted this week and with it went my new pi-hosted website. Thankfully I had backed up all the website files, but it took me a few days to resurrect it as it wasn't as simple as just copying the site directory onto the new card.

Hope you have a nice week and your projects are going smoothly!

  • Sign in to reply
Parents
  • mp2100
    mp2100 over 2 years ago

    This is bad news about TFlite.  I assume that if you roll back to python 3.9, then you get other dependency problems?  As you noted, there are a lot of examples for hobbyists, using TFlite.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
Comment
  • mp2100
    mp2100 over 2 years ago

    This is bad news about TFlite.  I assume that if you roll back to python 3.9, then you get other dependency problems?  As you noted, there are a lot of examples for hobbyists, using TFlite.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
Children
  • soldering.on
    soldering.on over 2 years ago in reply to mp2100

    Thanks for the suggestion, yes it's surprising isn't it, it seems from the github issue thread that there are a lot of people who also feel it is quite unexpected - I feel sorry for some who were using it for part-finished PhDs for instance, at least in my case it was a much more modest involvement. It seems that the ability to roll-back and get around the problem that way is no longer possible so at this stage I've taken the project in an alternative direction and am developing the audio classification using frequency analysis instead.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube