Author Topic: Image Processing Question(Guidance for Beginner)  (Read 1350 times)

0 Members and 1 Guest are viewing this topic.

Offline KaramelTopic starter

  • Regular Contributor
  • *
  • Posts: 178
  • Country: tr
Image Processing Question(Guidance for Beginner)
« on: November 01, 2017, 01:01:18 am »
Hi,

I am, currently, dealing with a problem about image processing. I need to recognize musical notes from an image which have musical notes and it is written with computer. (it is at below)



I am, unfortunately, freshman and have no idea about solution methods of problem. Could you give any hints to me?

Best Regards,
Karamel  ^-^
« Last Edit: November 01, 2017, 01:15:12 am by Karamel »
 

Offline Signal32

  • Frequent Contributor
  • **
  • Posts: 251
  • Country: us
Re: Image Processing Question(Guidance for Beginner)
« Reply #1 on: November 01, 2017, 01:20:14 am »
If you know the exact exact format that the music is in, then you can just hard-code the recognition of every symbol via pixel signatures ... basically you scan the bitmap and identify symbol signatures.
The more generic and involved approach is using something like opencv: https://docs.opencv.org/3.2.0/d1/dee/tutorial_moprh_lines_detection.html
There is also software that does this ... but I assume you want your own ? https://en.wikipedia.org/wiki/Optical_music_recognition
 

Offline rhb

  • Super Contributor
  • ***
  • Posts: 3518
  • Country: us
Re: Image Processing Question(Guidance for Beginner)
« Reply #2 on: November 01, 2017, 01:27:18 am »
The first step is to understand musical notation. There are 8 regular notes in each octave of the 12 notes in an equal tempered scale.  No accidentals are present, so once you know the key you have all the possible notes.

There are two tasks:

Determine the key from the sharp symbols at the beginning.

Determine the sequence and duration of the notes in that key.

It's an interesting problem.  There are many possible ways to solve it. 

Have Fun!
 

Offline drussell

  • Super Contributor
  • ***
  • Posts: 1855
  • Country: ca
  • Hardcore Geek
Re: Image Processing Question(Guidance for Beginner)
« Reply #3 on: November 01, 2017, 04:05:51 am »
It is not a trivial task to implement properly...

My cousin uses Sibelius with the PhotoScore add-on for that task.  She has had a full version for years but they also do offer monthly subscriptions which might fit your usage patterns if you don't want to re-invent the wheel yourself.  :)

http://www.avid.com/photoscore-and-notateme-lite
http://www.avid.com/sibelius


 

Offline KaramelTopic starter

  • Regular Contributor
  • *
  • Posts: 178
  • Country: tr
Re: Image Processing Question(Guidance for Beginner)
« Reply #4 on: November 01, 2017, 09:40:07 pm »
Thank you for all answers.

I am thinking to use OpenCV and C++ language. Okay, after deleting musical portrait, how can I classify what kind of musical notes they are without machine learning(full note, 1/2 note, 1/4 note) and how can I recognize it is C, D, A, B etc.

(I am asking ideas, methods, tasks etc.)
 

Offline tedge

  • Newbie
  • Posts: 3
  • Country: gb
Re: Image Processing Question(Guidance for Beginner)
« Reply #5 on: December 02, 2019, 09:32:37 pm »
I use Photoscore it was bundled with Sibelus 6
It works very well but expensive.
You can download a demo from
https://www.neuratron.com/photoscore.htm

A free program Musescore is similar to Sibelius
The program is constantly updated with improvements
Document how to scan a score and import into Musescore
https://musescore.org/en/node/11125
might be of interest.
If you have an Apple Ipad
In google browser enter ipad scan music
It will bring up apps and tutorials on youtube.
Good Luck
From tony
Learn Saxophone with the help of computers.
learnsax.co.uk/talk

« Last Edit: December 02, 2019, 09:44:13 pm by tedge »
 

Offline Nitrousoxide

  • Regular Contributor
  • *
  • Posts: 156
  • Country: au
Re: Image Processing Question(Guidance for Beginner)
« Reply #6 on: December 03, 2019, 06:46:50 am »
If you don't want to use machine learning. You could probably have a dictionary to compare the minimum mean squared error (MMSE) and select the lowest reported MMSE as a match for each individual note.
That would mean you would have to generate a predefined dictionary.
You also may find issues with differing quality images, in that case, you could use some morphological processes to improve the quality.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf