10
Apr 2013
shazam-logo
Υπάρχει μια πολύ χρήσιμη εφαρμογή που τρέχει στα smartphones και δίνει την δυνατότητα στον χρήστη να αναγνωρίσει ένα τραγούδι που ακούει μέσα σε ελάχιστα δευτερόλεπτα! Το γνωστό σε όλους μας Shazam που σιγά-σιγά παίρνει τα σκήπτρα στον τομέα του music identification, από τον προκάτοχο του, το Soundhound. Λίγο πολύ και οι δύο εφαρμογές λειτουργούν με τον ίδιο τρόπο.
Αν σκεφτούμε τον αριθμό των τραγουδιών που μπορεί να αναγνωρίσει η εφαρμογή, φαντάζει σχεδόν αδύνατο όλα αυτά τα τραγούδια να υπάρχουν σε μια βάση δεδομένων και να γίνεται η αναγνώριση με αυτό τον τρόπο. Κάτι τέτοιο θα απαιτούσε μια τεράστια βάση και το αποτέλεσμα θα ήταν αισθητά πιο αργό. Η επιτυχία της εφαρμογής είναι τεράστια, αφού ακόμα και σε αντίξοες ηχητικά συνθήκες, καταφέρνει να αναγνωρίζει το τραγούδι που επιλέγει ο χρήστης σε μεγάλο ποσοστό.Ο Avery Li-Chun Wang, ένας από τους developers της, θέλοντας να μας δείξει πως περίπου λειτουργεί η εφαρμογή, έγραψε ένα άρθρο χωρίς ωστόσο να μας πει τις λεπτομέρειες που την κατέστησαν τόσο επιτυχημένη. Πάμε λοιπόν να δούμε πως λειτουργεί!
Η λογική της βασίζεται στα μουσικά δαχτυλικά αποτυπώματα και στο φασματογράφημα που έχει το κάθε τραγούδι. Στην αρχή οι προγραμματιστές, μετατρέπουν τα τραγούδια και περνάνε το φασματογράφημα τους σε μια βάση δεδομένων. Εδώ αξίζει να σημειωθεί ότι το μέγεθος ενός φασματογραφήματος είναι ελάχιστο συγκριτικά με το μουσικό κομμάτι και αυτό είναι στην ουσία που δίνει την δυνατότητα ύπαρξης μιας τέτοιας εφαρμογής. Στην συνέχεια, όταν ο χρήστης επιλέξει να αναγνωρίσει ένα τραγούδι, η εφαρμογή καταγράφει ένα μέρος 10 δευτερολέπτων και κρατάει το φασματογράφημα αυτού. Το επόμενο βήμα είναι το Shazam να το ανεβάσει στην υπηρεσία που τρέχει πίσω από την εφαρμογή, η οποία εκτελεί μια αναζήτηση για να ταιριάξει τα μουσικά δαχτυλικά αποτυπώματα με αυτά της βάσης δεδομένων της και voila! Αφού υπάρξει ταίριασμα μεταξύ των δύο ο χρήστης λαμβάνει ένα μήνυμα με τον τίτλο του τραγουδιού, τον καλλιτέχνη καθώς και άλλες πληροφορίες σχετικά με αυτό. Σε περίπτωση αποτυχίας ταιριάσματος επιστρέφεται στον χρήστη μήνυμα σφάλματος. Να σημειωθεί ότι μερικές φορές σε περίπτωση άσχημων ηχητικών συνθηκών υπάρχει πιθανότητα να μην αναγνωριστεί το τραγούδι με την πρώτη προσπάθεια.
shazam
Ο τρόπος λειτουργίας της καταγραφής των μουσικών δαχτυλικών αποτυπωμάτων είναι ο εξής. Κάθε μουσικό κομμάτι μπορείτε να το σκεφτείτε ως ένα τρισδιάστατο γράφημα. Ο ένας άξονας αφορά τον χρόνο, ο δεύτερος την συχνότητα και ο τρίτος την ένταση. Κοιτάζοντας την διπλανή εικόνα, που δείχνει το φασματογράφημα ενός τραγουδιού, κάθε σημείο αντιπροσωπεύει την ένταση του, σε μία δεδομένη συχνότητα και σε ένα συγκεκριμένο χρονικό σημείο.Αλγοριθμικά λοιπόν το Shazam “χαρτογραφεί” τα τραγούδια με αυτό τον τρόπο και εντοπίζει τις συχνότητες με μέγιστη ένταση. Για καθένα από αυτά τα σημεία αιχμής, καταγράφεται η συχνότητα που τα αφορά καθώς και η χρονική στιγμή από την αρχή του τραγουδιού. Για παράδειγμα, ένα δείγμα 10 δευτερολέπτων θα μπορούσε να δείχνει κάπως έτσι:

 

Αυτό που κάνει το Shazam είναι να δημιουργήσει έναν πίνακα κατακερματισμού των αποτυπωμάτων που ως κλειδί θα έχει την συχνότητα. Όταν ο χρήστης επιθυμεί να αναγνωρίσει ένα ηχητικό κομμάτι, και η εφαρμογή λάβει το αποτύπωμα, θα κάνει αλλεπάλληλες αναζητήσεις στην βάση δεδομένων της ώστε να καταλήξει στο ταίριασμα και να ενημερώσει τον χρήστη για τις πληροφορίες του. Αν δεν τα καταφέρει, θα ενημερώσει τον χρήστη με ένα μήνυμα λάθους.

shazam-mobile

 

Popular Posts

thumbnail 18 Tips που είναι καλό να “σεβαστείς” στον σχεδιασμό της ιστοσελίδας σου.

Η υλοποίηση του εταιρικού σου Website

20130810_WBM2001 Πόλεμος στους browsers & επικράτηση του Chrome

Οι αυτοκρατορίες και οι νικητές σ

braille11 “Ένα touchscreen για τα χέρια τους μόνο”

Η εμφάνιση οθόνης αφής στο κινητό

Calendar

August 2018
M T W T F S S
« Apr    
 12345
6789101112
13141516171819
20212223242526
2728293031