You signed in with another tab or window.Reload to refresh your session.You signed out in another tab or window.Reload to refresh your session.You switched accounts on another tab or window.Reload to refresh your session.Dismiss alert
A sheet music reader that converts sheet music to a machine-readable version!
Methodology
1 - Fixing orientation and Skew and biniarization
Input Image
Fixed Rotation Image
Binarized Image
We Binarize the Image using Savoula with a block size relative to the sizeof the image then we dilate it to get the bounding rectangle around theimage then we crop the image and we start to fix the orientation by rotatingusing the angle from Hough line transform and we fix the skew by usingfour-point perspective.
2 - Segmentation of Staffs , Detecting Staff Notes and Line Removal
Segmented Image
We first dilate the image so that each staff is completely connected andthen we calculate the row histogram form which using an iterative way wetry different thresholds and calculate some parameters like the averagewidth and standard deviation of widths and then choose the parametersthat are best for the threshold and then we segment.
We calculate the thickness and space between lines using a column runlength and histogram then we detect the staff line Positions by using thehistogram and we remove them from the original image.
3 - Notes Positions Detection
Position of notes
We use a structuring element that is in the shape of an ellipse using thesame height as the detected from the Lines, then to detect hollow noteswe use skeletonization and then filling the outer and opening to and thenwe use the same structure element again.
4 - Notes Segmentation and Classifier Prediction
Lastly, we segment the notes using their bounding rectangle and passthem to the Classifier to get their value and translate them to therequired output and write them to file
License
Distributed under the MIT License. SeeLICENSE for more information.