# OpenCV

OpenCV is an open-source computer vision library with over 2,500 algorithms and interfaces for C++, Python, and Java.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Seasons time-lapse - alignment

DevFeed: [Seasons time-lapse - alignment](<https://devfeed.tech/articles/seasons-time-lapse-alignment-18926.md>)

Original publisher: [Read original article](<https://blog.frankel.ch/seasons-time-lapse/2/>)

Author: Nicolas Fränkel

Published: 2026-05-24T00:00:00Z

Content type: tutorial

Language: en

Sources: [Nicolas Fränkel](<https://devfeed.tech/sources/nicolas-frankel.md>)

Topics: [Computer vision](<https://devfeed.tech/topics/computer-vision.md>), [OpenCV](<https://devfeed.tech/topics/opencv.md>), [image distortion](<https://devfeed.tech/topics/image-distortion.md>), [Algorithms](<https://devfeed.tech/topics/algorithms.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [algorithms](<https://devfeed.tech/tags/algorithms.md>), [art](<https://devfeed.tech/tags/art.md>), [camera](<https://devfeed.tech/tags/camera.md>), [computer-vision](<https://devfeed.tech/tags/computer-vision.md>), [development](<https://devfeed.tech/tags/development.md>), [iphone](<https://devfeed.tech/tags/iphone.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [python](<https://devfeed.tech/tags/python.md>), [time-lapse](<https://devfeed.tech/tags/time-lapse.md>), [transformation](<https://devfeed.tech/tags/transformation.md>)

### AI overview

This article explains how the Seasons time-lapse project aligns photographs taken from slightly different viewpoints and with different phone cameras. It describes using OpenCV feature matching with ORB, followed by RANSAC and a homography to estimate the geometric transformation.

### Source excerpt

In the previous post, I described the Seasons project: a time-lapse of hundreds of pictures taken from nearly the same viewpoint over the years. The hardest challenge wasn't taking the pictures or assembling them, but aligning them. You might have noticed the nearly part about viewpoint in the above paragraph. Indeed, it's an approximation. I'm a human being, not a tripod. The position changes ever so slightly, and so does the exact angle.

## Seasons time-lapse - the foundations

DevFeed: [Seasons time-lapse - the foundations](<https://devfeed.tech/articles/seasons-time-lapse-the-foundations-18925.md>)

Original publisher: [Read original article](<https://blog.frankel.ch/seasons-time-lapse/1/>)

Author: Nicolas Fränkel

Published: 2026-05-17T00:00:00Z

Content type: article

Language: en

Sources: [Nicolas Fränkel](<https://devfeed.tech/sources/nicolas-frankel.md>)

Topics: [Python](<https://devfeed.tech/topics/python.md>), [OpenCV](<https://devfeed.tech/topics/opencv.md>), [Vibe coding](<https://devfeed.tech/topics/vibe-coding.md>), [Inference](<https://devfeed.tech/topics/inference.md>)

Tags: [art](<https://devfeed.tech/tags/art.md>), [development](<https://devfeed.tech/tags/development.md>), [image](<https://devfeed.tech/tags/image.md>), [llm](<https://devfeed.tech/tags/llm.md>), [photos](<https://devfeed.tech/tags/photos.md>), [python](<https://devfeed.tech/tags/python.md>), [technical](<https://devfeed.tech/tags/technical.md>), [time](<https://devfeed.tech/tags/time.md>), [time-lapse](<https://devfeed.tech/tags/time-lapse.md>), [video](<https://devfeed.tech/tags/video.md>)

### AI overview

This article introduces a multi-part retrospective on building a seasons time-lapse video from photographs taken over several years. It describes using an LLM-assisted workflow, choosing Python, and designing a typed, tested image-processing pipeline that inventories, filters, aligns, and orders photos.

### Source excerpt

I live close to nature. I regularly go for a run in the countryside. Over several years, during my runs, I've taken pictures from the same position, always roughly the same angle. I had a vague idea in the back of my mind, as an 'artistic' project. One day, I'd turn those photos into a time-lapse video, one that would show the passage of seasons across a single place. Spoiler, here's the work in progress: However, I knew that this project would take ages.

## Converting Vertex-Colored Meshes to Textured Meshes

DevFeed: [Converting Vertex-Colored Meshes to Textured Meshes](<https://devfeed.tech/articles/converting-vertex-colored-meshes-to-textured-meshes-7551.md>)

Original publisher: [Read original article](<https://huggingface.co/blog/vertex-colored-to-textured-mesh>)

Author: Dylan Ebert

Published: 2024-09-30T00:00:00Z

Content type: tutorial

Language: en

Sources: [Hugging Face - Blog](<https://devfeed.tech/sources/hugging-face-blog.md>)

Topics: [3D](<https://devfeed.tech/topics/3d.md>), [Image processing](<https://devfeed.tech/topics/image-processing.md>), [Library](<https://devfeed.tech/topics/library.md>), [OpenCV](<https://devfeed.tech/topics/opencv.md>), [NumPy](<https://devfeed.tech/topics/numpy.md>)

Tags: [3d](<https://devfeed.tech/tags/3d.md>), [code](<https://devfeed.tech/tags/code.md>), [image-processing](<https://devfeed.tech/tags/image-processing.md>), [library](<https://devfeed.tech/tags/library.md>), [mesh](<https://devfeed.tech/tags/mesh.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [vision](<https://devfeed.tech/tags/vision.md>)

### AI overview

A tutorial explaining how to convert vertex-colored meshes into UV-mapped, textured meshes. It presents a quick solution using the InstantTexture library and a detailed implementation based on UV generation, vertex-color remapping, barycentric interpolation, and texture-buffer filling.

### Source excerpt

We're on a journey to advance and democratize artificial intelligence through open source and open science.

## How we wrote chicken egg counter on a Raspberry PI

DevFeed: [How we wrote chicken egg counter on a Raspberry PI](<https://devfeed.tech/articles/how-we-wrote-chicken-egg-counter-on-a-raspberry-pi-20853.md>)

Original publisher: [Read original article](<https://ivanursul.com/counting-eggs-in-opencv>)

Author: Ivan Ursul

Published: 2018-10-03T09:23:24Z

Content type: tutorial

Language: en

Sources: [Ivan Ursul](<https://devfeed.tech/sources/ivan-ursul.md>)

Topics: [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>), [OpenCV](<https://devfeed.tech/topics/opencv.md>), [webcam](<https://devfeed.tech/topics/webcam.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Databases](<https://devfeed.tech/topics/databases.md>)

Tags: [camera](<https://devfeed.tech/tags/camera.md>), [image-recognition](<https://devfeed.tech/tags/image-recognition.md>), [java](<https://devfeed.tech/tags/java.md>), [linux](<https://devfeed.tech/tags/linux.md>), [migrations](<https://devfeed.tech/tags/migrations.md>), [mongodb](<https://devfeed.tech/tags/mongodb.md>), [network](<https://devfeed.tech/tags/network.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>), [stream](<https://devfeed.tech/tags/stream.md>), [webcam](<https://devfeed.tech/tags/webcam.md>)

### AI overview

A project account describing the design of a Raspberry Pi application that uses a webcam and OpenCV-based image recognition to count chicken eggs on a factory conveyor and send the count to a database. It discusses tracking eggs across camera frames and preprocessing images to identify contours and ellipses.

### Source excerpt

How it started Besides my main work on Upwork I quite often pick different projets. So I found a project, where I had to write a program for recognizing chicken eggs on a factory stream line. Customer wanted to install the application on computer with web camera, put this camera at a top of stream line and the application had to calculate eggs and send them to the DB. He also wanted to run this program on a cheap computer. The quality of the network in the factory isn't stable, so the program had to be resilient to outstand the network issues. There was enough challenges for me, so I decided to participate on this project.

## Animated line drawings with OpenCV

DevFeed: [Animated line drawings with OpenCV](<https://devfeed.tech/articles/animated-line-drawings-with-opencv-21653.md>)

Original publisher: [Read original article](<https://www.windytan.com/2017/12/animated-line-drawings-with-opencv.html>)

Author: Oona Räisänen (noreply@blogger.com)

Published: 2017-12-30T12:15:00Z

Content type: tutorial

Language: en

Sources: [Oona Räisänen](<https://devfeed.tech/sources/oona-raisanen.md>)

Topics: [OpenCV](<https://devfeed.tech/topics/opencv.md>), [C++](<https://devfeed.tech/topics/c-plus-plus.md>), [Computer vision](<https://devfeed.tech/topics/computer-vision.md>), [CMake](<https://devfeed.tech/topics/cmake.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>)

Tags: [art](<https://devfeed.tech/tags/art.md>), [c-plus-plus](<https://devfeed.tech/tags/c-plus-plus.md>), [canvas](<https://devfeed.tech/tags/canvas.md>), [cmake](<https://devfeed.tech/tags/cmake.md>), [compiler-flags](<https://devfeed.tech/tags/compiler-flags.md>), [computer-vision](<https://devfeed.tech/tags/computer-vision.md>), [gaussian](<https://devfeed.tech/tags/gaussian.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [gui](<https://devfeed.tech/tags/gui.md>), [make](<https://devfeed.tech/tags/make.md>), [music](<https://devfeed.tech/tags/music.md>), [plotting](<https://devfeed.tech/tags/plotting.md>), [programming](<https://devfeed.tech/tags/programming.md>), [rgb](<https://devfeed.tech/tags/rgb.md>), [rotation](<https://devfeed.tech/tags/rotation.md>), [subpixel](<https://devfeed.tech/tags/subpixel.md>), [terminal](<https://devfeed.tech/tags/terminal.md>), [vector](<https://devfeed.tech/tags/vector.md>), [video](<https://devfeed.tech/tags/video.md>)

### AI overview

This tutorial shows how to use OpenCV and C++ to create pixel-level animated graphics and save them as video. It covers project setup with CMake, drawing rotating concentric rings on an RGB canvas, subpixel antialiasing, and a Gaussian blur glow effect.

### Source excerpt

OpenCV is a pretty versatile C++ computer vision library. Because I use it every day it has also become my go-to tool for creating simple animations at pixel level, for fun, and saving them as video files. This is not one of its core functions but happens to be possible using its GUI drawing tools. Below we'll take a look at some video art I wrote for a music project. It goes a bit further than just line drawings but the rest is pretty much just flavouring. As you'll see, creating images in OpenCV has a lot in common with how you would work with layers and filters in an image editor like GIMP or Photoshop. Setting it up It doesn't take a lot of boilerplate to initialize an OpenCV project. Here's my minimal CMakeLists.txt: cmake_minimum_required (VERSION 2.8) project (marmalade) find_package (OpenCV REQUIRED) add_executable (marmalade marmalade.cc) target_link_libraries (marmalade ${OpenCV_LIBS}) I also like to set compiler flags to enforce the C++11 standard, but this is not necessary. In the main .cc file I have: #include "opencv2/imgproc/imgproc.hpp" #include "opencv2/highgui/highgui.hpp" Now you can build the project by just typing cmake . && make in the terminal. Basic shapes First, we'll need an empty canvas. It will be a matrix (cv::Mat) with three unsigned char channels for RGB at Full HD resolution: const cv::Size video_size(1920, 1080); cv::Mat mat_frame = cv::Mat::zeros(video_size, CV_8UC3); This will also initialize everything to zero, i.e. black. Now we can draw our graphics! I had an initial idea of an endless cascade of concentric rings each rotating at a different speed. There might be color and brightness variations as well but otherwise it would stay static the whole time. You can't see a circle's rotation around its center, so we'll add some features to them as well, maybe some kind of bars or spokes. A simplified render method for a ring would look like this: void Ring::RenderTo(cv::Mat& mat_output) const { cv::circle(mat_output, 8 * center_, 8 *

## Mapping microwave relay links from video

DevFeed: [Mapping microwave relay links from video](<https://devfeed.tech/articles/mapping-microwave-relay-links-from-video-21639.md>)

Original publisher: [Read original article](<https://www.windytan.com/2014/07/mapping-microwave-relay-links-from-video.html>)

Author: Oona Räisänen (noreply@blogger.com)

Published: 2014-07-14T13:05:00Z

Content type: tutorial

Language: en

Sources: [Oona Räisänen](<https://devfeed.tech/sources/oona-raisanen.md>)

Topics: [Network](<https://devfeed.tech/topics/network.md>), [Networks](<https://devfeed.tech/topics/networks.md>), [OpenCV](<https://devfeed.tech/topics/opencv.md>)

Tags: [camera](<https://devfeed.tech/tags/camera.md>), [communications](<https://devfeed.tech/tags/communications.md>), [computer-vision](<https://devfeed.tech/tags/computer-vision.md>), [drone](<https://devfeed.tech/tags/drone.md>), [government](<https://devfeed.tech/tags/government.md>), [gps](<https://devfeed.tech/tags/gps.md>), [map](<https://devfeed.tech/tags/map.md>), [mapping](<https://devfeed.tech/tags/mapping.md>), [network](<https://devfeed.tech/tags/network.md>), [networks](<https://devfeed.tech/tags/networks.md>), [radio](<https://devfeed.tech/tags/radio.md>)

### AI overview

The article explains how to map microwave relay links between towers using position-stamped video or still-camera footage. It describes estimating antenna direction from dish geometry, using OpenCV for image processing, and estimating a linked tower's maximum possible distance from antenna height and line-of-sight constraints.

### Source excerpt

Radio networks are often at least partially based on microwave relay links. They're those little mushroom-like appendices growing out of cell towers and building-mounted base stations. Technically, they're carefully directed dish antennas linking such towers together over a line-of-sight connection. I'm collecting a little map of nearby link stations, trying to find out how they're interconnected and which network they belong to. Circling around We can find a rough direction for any link antenna by approximating a tangent for the dish shroud surface from position-stamped video footage taken while circling the tower. Optimally we would have a drone make a full circle around the tower at a constant distance and elevation to map all antennas at once; but if our DJI Phantom has run out of battery, a GPS positioned still camera at ground level will also do. The rest can be done manually, or using Hough transform and centroid calculation from OpenCV. In these pictures, the ratio of the diameters of the concentric circles is a sinusoid function of the angle between the antenna direction and the camera direction. At its maximum, we're looking straight at the beam. (The ratio won't max out at unity in this case, because we're looking at the antenna slightly from below.) We can select the frame with the maximum ratio from high-speed footage, or we can interpolate a smooth sinusoid to get an even better value. This particular antenna is pointing west-northwest with an azimuth of 290°. What about distance? Because of the line-of-sight requirement, we also know the maximum possible distance to the linked tower, using the formula 7140 x √(4 / 3 x h) where h is the height of the antenna from ground. If the beam happens to hit a previously mapped tower closer than this distance, we can assume they're connected! This antenna is communicating to a tower not further away than 48 km. Judging from the building it's standing on, it belongs to a government trunked radio network.