Skip to main content

10 posts tagged with "computer vision"

View All Tags

How to Store Images in ROS2

· 11 min read
Anthony Cavin
Data Scientist - ML/AI, Python, TypeScript

 

ROS2 is widely used for building robotic systems with sensors like cameras, LiDAR, and IMUs. While it's great for communication (e.g., publishing and subscribing to topics), it lacks a built-in solution for storing large amounts of unstructured data, such as images.

Bag files are commonly used to store data in ROS2, but they aren't a good fit for long-term storage or real-time streaming. They're mainly meant for recording and replaying mission data or episodes, not for managing large volumes of unstructured data.

Addressing this challenge, this blog post will guide you through setting up ROS2 with ReductStore a high-performance storage and streaming solution optimized for unstructured, time-series data.

We will focus specifically on image data, but if you are interested in a more general overview you can read How to Store and Manage Robotic Data which covers the challenges and strategies for storing and managing robotic data in general.

For the full code example, we will be using the reduct-ros-example repository, which provides a complete implementation of the concepts discussed in this article.

How to Find the Best Pre-Trained Models for Image Classification

· 10 min read
Anthony Cavin
Data Scientist - ML/AI, Python, TypeScript

Transfer vs No Transfer Learning

A pre-trained model is a neural network that has already been trained on a large dataset to perform specific tasks, such as image classification or object detection. These models are highly valuable, allowing us to build on previous knowledge rather than starting from scratch.

However, computer vision models often require large datasets of labeled images or videos, which can quickly become challenging to manage, especially when sourced from continuous data streams. ReductStore addresses this need by providing an efficient and reliable time-series object store capable of handling large volumes of high-frequency, unstructured data such as video streams or labeled images. For practical guidance on implementing ReductStore and integrating it with Roboflow to develop high-performing computer vision models, refer to the guide: Computer Vision Made Simple with ReductStore and Roboflow.

Reducing Annotation Work in High-FPS Vision Applications with Roboflow

· 5 min read
Anthony Cavin
Data Scientist - ML/AI, Python, TypeScript

Roboflow Annotation Diagram

High-speed performance is a must for today's computer vision applications, but it comes with many challenges. These include processing a high volume of frames per second (FPS), which requires not only fast algorithms, but also efficient data storage to handle the large quantities of images being processed in real time.

Traditional annotation methods are often time-consuming and labor-intensive for training machine learning models. In other words, they create bottlenecks that slow down projects from getting done.

At the same time, Roboflow was designed to address the challenges associated with annotating data, but manually labeling all images is often tedious and unrealistic. In this case, ReductStore can provide the tools to query, filter, and replicate specific images for further annotation and training.

In this article, we'll explain how Roboflow can help reduce the time and effort required to annotate images, and how ReductStore can be used to store and filter important images.