Today I look at using F# with the NDtw package. This is so I can play with some dynamic time warping. In case you’re not familar with DTW, the TLDR version is that it is a method to compare timeseries data that can differ in frequency. This allows for a more nuanced data comparison that can capture shifted, compressed, and extended patterns. It’s a fun little algorithm to use and worth reading more about.
Decision Trees with F# and Accord.NET (Part 2)
Read Time: 10 minutesThis is part 2 of my attempt to use an Accord.NET Decision Tree to classify Lego set themes using F#. Just as a reminder, the original data source is Rebrickable. You can find Part 1 here.
Decision Trees with F# and Accord.NET (Part 1)
Read Time: 15 minutesIt is time for an exploration into using a Decision Tree to classify Lego set themes using F# and Accord.NET.
First things first, the data. Rebrickable has downloadable datasets for Lego sets and pieces. I’ll use the sets.csv
file as the primary dataset driver, but will grab information from sets_pieces.csv
, pieces.csv
, and colors.csv
for feature creation. The files are not in an format appropriate for a decision tree, so some transformations will need to happen first. I don’t want the post to get too long, so this project will be broken into two components. Part 1 will be building the feature file and getting the data into the desired comsumable format, Part 2 will actually use the file to get to the end goal.
Edge Filter using F# and Accord.NET
Read Time: 2 minutesThis is a sample of how to apply edge filters to a set of images using F# and Accord.NET. The framework provides several Filters for image manipulating. Since I’m interested in edge enhancement I’ll limit my scope to those filters. In particular I’ve selected the DifferenceEdgeDetector()
.
Face Detection with F# and Accord.NET
Read Time: 4 minutesThis is a quick sample using F# and Accord.NET to do face detection. The method uses the provided Haar-like feature detection. The results aren’t particularly good, but for little effort it’s an ok start. At a minimum, it does reasonably well at detecting potential regions of interest. For the test images, the best improvements were found when constraining the min/max range based on the known sizes of faces in the pictures.