Maison > développement back-end > Tutoriel Python > Code de vérification d'identification d'entrée de gamme du robot Python

Code de vérification d'identification d'entrée de gamme du robot Python

PHPz
Libérer: 2017-03-05 13:48:38
original
2343 Les gens l'ont consulté

Informations préliminaires : Le contenu mentionné dans cet article a été réalisé par le blogueur lors des vacances d'été dernières. Je ne me suis jamais suffisamment installé pour écrire mes pensées sur papier. Heureusement, j'ai plus de temps libre pendant ces vacances, alors j'ai pensé que je pourrais le faire. Je peux écrire autant que je veux, donc cet article est ici.

Code de vérification ? Puis-je le cracker aussi ?

Je ne dirai pas grand-chose sur l'introduction des codes de vérification. Divers codes de vérification apparaissent de temps en temps dans la vie des gens. Le blogueur est un étudiant de la Northeastern University, et celui avec qui il a le plus de contacts quotidiens. est le département des affaires académiques. Le code de vérification du système est ici.
Les étudiants se sont plaints du code de vérification de l'Université de Dongda. Il est non seulement sensible à la casse, mais parfois vous l'avez saisi correctement, mais un message d'erreur apparaît à ce moment-là. > peut-être que ça devrait apparaître. 禁止你的左键复制(Cependant, le Bureau des affaires académiques a modifié le contenu du code de vérification au cours de l'année universitaire 201Code de vérification didentification dentrée de gamme du robot Python-2017 pour le rendre plus pratique à utiliser pour les humains.)

On peut voir que le code de vérification du Bureau des affaires académiques est très réglementé, et la taille, la position, la forme, etc. de chaque lettre et chiffre sont fixes, ce qui convient aux débutants sans fondement pour identifier les codes de vérification.

Méthode d'identification

La connexion simulée comporte des étapes compliquées. Ici, quelles que soient les autres opérations, nous sommes uniquement responsables du renvoi d'une chaîne de réponse basée sur une image de code de vérification d'entrée.

Nous savons que le code de vérification rendra l'image colorée afin de créer des interférences, et nous devons d'abord supprimer ces interférences, cette étape nécessite une expérimentation continue, en améliorant la couleur de l'image, en augmentant le contraste, etc. . peut aider.

Après diverses opérations sur les images, j'ai enfin trouvé une solution plus parfaite pour supprimer les interférences. On peut voir qu’après avoir supprimé les interférences, dans des circonstances optimales, nous obtiendrons une image de caractères en noir et blanc très pure. Il y a quatre caractères dans une image. Il est impossible de reconnaître les quatre caractères à la fois. L'image doit être recadrée pour que chaque petite image ne comporte qu'un seul caractère, puis chaque image est reconnue séparément.

La prochaine étape consiste à reconnaître le texte , nous convertissons d’abord la petite image obtenue en une matrice représentée par 01, chaque matrice représente un caractère.

Par exemple, la matrice du chiffre six

num_Code de vérification didentification dentrée de gamme du robot PythonCode de vérification didentification dentrée de gamme du robot Python[
0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,1,1,0,0,0,0,0,0,
0,0,0,0,1,1,1,0,0,0,0,0,0,
0,0,0,1,1,1,0,0,0,0,0,0,0,
0,0,0,1,1,0,0,0,0,0,0,0,0,
0,0,1,1,0,0,0,0,0,0,0,0,0,
0,0,1,1,0,0,0,0,0,0,0,0,0,
0,1,1,1,1,1,1,1,0,0,0,0,0,
0,1,1,1,1,1,1,1,1,0,0,0,0,
0,1,1,0,0,0,0,1,1,1,0,0,0,
0,1,1,0,0,0,0,0,1,1,0,0,0,
0,1,1,0,0,0,0,0,1,1,0,0,0,
0,1,1,1,0,0,0,1,1,1,0,0,0,
0,0,1,1,1,1,1,1,1,0,0,0,0,
0,0,0,1,1,1,1,1,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,
]
Copier après la connexion
En la regardant de loin, vous pouvez encore la distinguer si vous plissez les yeux.

Parce que le code de vérification du Bureau des affaires académiques de l'Université de Dongda est très régulier et que la position de chaque numéro est fixe, il n'est donc pas nécessaire d'impliquer un algorithme d'apprentissage automatique. Il s'agit simplement d'une simple comparaison matricielle. la matrice avec la plus grande similarité parmi toutes les matrices implémentées. Quoi qu'il en soit, il existe différentes méthodes de comparaison, à condition que les données soient simples et puissent être correctement identifiées.

À ce stade, notre travail d'identification du code de vérification est terminé.

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal