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”

Spam Filter

In this post we will implement a spam filter. My motivation is dual. On one hand I am reading and experimenting with the book Natural Language Processing by Ekaterina Kockmar published by Manning. On the other hand, I am experimenting with VSCode IDE using GitHub Copilot. If interested I would suggest following the book. I purchased a copy via Amazon Prime.

I have to disclose that at this time I am a Microsoft employee and have been using Visual Studio and VSCode for many years. Continue reading “Spam Filter”

Split Text

Hope your day is going well. As you might know, I enjoy spending the mornings of Saturdays and Sundays reading and experimenting. To me that is the best way of learning. I use about eight hours per weekend to learn.

Earlier this year I purchased the book Getting Started with Natural Language Processing by Ekaterina Kockmar published by Manning. A few years back I took an on-line course on machine learning which touched on some of the topics also covered by this book. Continue reading “Split Text”

Introduction to Python Fundamentals – Lesson 1

It is Thursday morning in the Twin Cities of Minneapolis and St. Paul. Even though we are still officially in summer, the highs and lows for the days are going down. Hopefully we will have at least two more months of decent weather to walk outside.

As I mentioned in the last posts, we are going to start solving problems in Python. According to the PYPL Index, for results collected in August 2021, the most popular programming language is Python with a share of 31.47%. Java is second with a 19.14% share.

According to the IEEE Spectrum article “Top Programming Languages 2021 Python dominates as the de facto platform for new technologies” Python is number 1. I guess it is time to start solving problems in Python. In our next post I will start solving easy problems. We will then progress to medium and hard.

As you might already know, I like to refresh on tools I will be using. I decided to start watching “Introduction to Python Fundamentals: Lesson 01” by Paul Deitel published by Pearson Education, Inc. Since I am a member of the ACM (https://en.wikipedia.org/wiki/Association_for_Computing_Machinery) I have access to O’Reilly titles. If you work developing software, I strongly recommend you joining the ACM. They provide a wealth of information at your fingertips. For example, earlier today I attended the webinar “Quantum Computational Supremacy” by Scott Aaronson. I do not work with quantum computers, but enjoy learning about the technology. If you have a chance, watch the recording of the webinar which should be available in a few days.

Continue reading “Introduction to Python Fundamentals – Lesson 1”

Crash Course in Python – Part I

As I have mentioned in previous posts, I like to purchase and read computer related technical books. When I receive the book I write my name and year on the first page. I then locate the date for the last revision and circle it. In 2017 I purchased “Data Science from Scratch” by Joel Grus. I read the first five chapters that I was interested it at the time and moved on to the next book. Continue reading “Crash Course in Python – Part I”

Machine Learning – Setup

I am constantly reading and experimenting to learn things which I may apply to work projects. A few years ago I decided to spent time on and off learning machine learning (ML). With that purpose in mind, I got a number of books on different subjects (e.g., Deep Learning, Python and Statistics) which seemed to be useful to achieve my goal.

On the platform side, I started experimenting on Windows. Most things work fine but some things do not. For example, I had to wait to use Tensorflow because it ran on Linux but not on Windows. Today it seems to work on both. The same seems to hold true for Docker. Continue reading “Machine Learning – Setup”

TensorFlow(tm) on Windows

As you might already know, TensorFlow(tm) could not run natively on Windows. At the time you had to run it on a VM or a Docker container. Earlier this month Google released a native version for Windows. This morning I woke up around 04:00 AM and decided to install it on my computer to have it available over the weekend. The installation is quite simple and it works as I will show.

Initially I ran into problems due to different versions of Anaconda and Python on my machine. The instructions from Google call for Python 3.5 (or higher). I had installed different versions (i.e., Python 2.7) plus Python Tools 2.2 for Visual Studio 2013. I decided to remove programs in order, leaving Python for VS towards the end. I really wanted to avoid removing such package. Continue reading “TensorFlow(tm) on Windows”