Transformations

The Twin Cities of Minneapolis and St. Paul is at a latitude of almost 45 degrees north. Towards the summer solstice which is in a week or so, the daylight lasts about 15.5 hours. The beauty in summer is that after work, you still have about 4 to 5 hours to enjoy the outdoors. In winter it is quite the opposite. I guess, there is no perfect place on earth.

At home, one of the gutters has a section that brings the rain water down. The section forms some type of a lazy step. My wife and I noticed a few days ago that a couple of birds decided to build their nest on the lazy step. Continue reading “Transformations”

Watershed

In this post we continue exploring and experimenting with topics from the PluralSight course Building Image Processing Applications Using scikit-image by Janani Ravi. The topic for this post is Watershed.

In image processing, a watershed (image processing) is a transformation defined on a grayscale image. The name refers metaphorically to a geological watershed, or drainage divide, which separates adjacent drainage basins. The watershed transformation treats the image it operates upon like a topographic map, with the brightness of each point representing its height, and finds the lines that run along the tops of ridges. These lines are then used to segment the image into regions. Continue reading “Watershed”

RAG Thresholding

This morning I read some news from different sources. I am amazed how facts are edited to provide some information but with a lot of bias in favor of the group reporting.

The first one was regarding how 50% of animal species have been decimated. The actual news mentioned that about 50% of species in the world are in decline. Yet some 3% are flourishing. 

On a different set of news, wildfires are out of control in Canada. The effects on the weather in different states in the USA is being felt including in Minnesota. For the past week or so we have had high values in the air quality which indicate many pollutants coming from the fires in Canada. The news stated that this is all due to global warming. Continue reading “RAG Thresholding”

Thresholding

In this post we will experiment applying global (histogram based) and local (considering values of neighboring pixels) thresholding to images.

This post is based on the PluralSight course Building Image Processing Applications Using scikit-image by Janani Ravi. She uses the Jupyter notebook for the exercises. I decided to use the VSCode IDE to experiment with GitHub Copilot. At this point in time such a feature does not seem to be available.

I would like to disclose that I am a Microsoft employee and have been using VSCode and Visual Studio IDEs for many years. Like to follow the KISS principle (https://en.wikipedia.org/wiki/KISS_principle) and when needed, challenge common assumptions that do not make sense to me i.e., this is how we always do it, or this is how it is done. Continue reading “Thresholding”

Erosion Dilation to Fill Holes and Find Peaks

In this post we will experiment with the contents of the section on Filling Holes and Finding Peaks Using Erosion and Dilation of the PluralSight course Building Image Processing Applications Using scikit-image by Janani Ravi.

It seems that this as most of the other sections stand on its own. The idea is to find out that such a library exists, what it is used for, experiment with it, and if the need arises in the future, you will have a basic understanding of how to use the feature. Continue reading “Erosion Dilation to Fill Holes and Find Peaks”

Corner Detection

It is a summer Saturday morning in the Twin Cities of Minneapolis and St. Paul in Minnesota. The temperature will go up to 87F. Around 10:00 AM, before it gets too hot, my wife and I will go out for a leisure walk of 10 miles. Last night I had a hard time sleeping so hopefully the mild exercise will help this evening.

In this post we continue to watch the PluralSight course Building Image Processing Applications Using scikit-image by Janani Ravi. She uses a Jupyter notebook. In this post we will use VSCode with GitHub Copilot. I should disclose that I am a Microsoft employee and have been using VSCode for a few years. When possible I like to follow the KISS principle so I prefer to use the minimum number of IDEs that support all the programming languages I wish to use. Why complicate life using as many IDEs as one can find and never become proficient on all of them. Continue reading “Corner Detection”

Histogram of Oriented Gradients

This morning on LinkedIn, NEWSLETTER, Big Technology, A newsletter about Big Tech and society, by Alex Kantrowitz I listened to the podcast Let’s Talk About Temu and Shein, The Fast-Rising, China-Based Retailers Threatening U.S. Mainstays.¬†

On Big Technology Podcast, Ranjan Roy and Alex Kantrowitz spoke with New York Magazine contributing editor John Herrman about Temu and Shein, the fast-rising, China-based retailers that are threatening the U.S. mainstays including H&M and Amazon.

Continue reading “Histogram of Oriented Gradients”

Daisy Descriptors

In this post I will experiment with the DAISY descriptors. Please note that one of the simplest approaches is to alter parameters in the different functions and observe the results. In addition you should look up the functions in the scikit-image to get a better understanding of the function and arguments e.g., skimage.feature.daisy.

The motivation for this post is the PluralSight course by Janani Ravi. She uses the Jupyter notebook in the course. We will use the VSCode IDE with GitHub Copilot. This helps experiment with the code. At this point I would like to disclose that I am a Microsoft employee and use the VSCode IDE with GitHub Copilot extension. Have been using VSCode for a few years. In the past few months I started using GitHub Copilot. Continue reading “Daisy Descriptors”

Canny Edge Detector

Welcome to the last section of the first chapter on the PluralSight course Building Image Processing Applications Using scikit-image by Janani Ravi.

In this post we will deal with the Canny edge detector. It is a more complex edge detector that Roberts or Sobel. Continue reading “Canny Edge Detector”

Edge Detection

In this post we will experiment with edge detection techniques using the Roberts and Sobel edge detection algorithms.

The motivation for this post came from the PluralSight course Building Image Processing Applications Using scikit-image by Janani Ravi. She uses the Jupyter notebook for the exercises. In this post I am using VSCode with GitHub Copilot. I would like to disclose that I am a Microsoft employee and have been using VSCode for many years. Continue reading “Edge Detection”