Cum să afli ce este scris în captcha. Servicii de recunoaștere automată a captcha. Cum să folosești Google pentru a-și sparge propriul captcha

Am eliberat carte noua„Marketingul de conținut în în rețelele sociale: Cum să intri în capul abonaților tăi și să-i faci să se îndrăgostească de marca ta.”

Abonati-va


Captcha este un test de umanitate folosit pentru a proteja o resursă de spam și roboți. Dar îi împiedică pe oamenii cinstiți să verifice, de exemplu, poziția site-ului. Prin urmare, este piratat folosind instrumente bazate pe punctele slabe ale tehnologiei. Astăzi vă vom spune cum să rezistați captcha-ului.

Cine trebuie să ocolească captcha

Este ocolit nu numai de către spammeri pentru a crea un număr mare de noi cutii poștale, comentarii pe forumuri și pagini de pe rețelele sociale pentru răspândirea în continuare a spam-ului. De asemenea, companiile oneste trebuie să ocolească protecția pentru a obține rezultate mod automat. De exemplu, proprietarul site-ului să verifice pozițiile motor de căutare sau resurse care colectează automat informații tematice.

Căutare grosieră a tuturor opțiunilor

Chiar și atunci când au fost create captch-uri, întrebările și răspunsurile au fost inventate manual și au existat cantitate limitata. Aceasta înseamnă că, după ce au petrecut ceva timp pe site și au colectat toate răspunsurile posibile, acestea ar putea fi colectate într-o bază de date și utilizate pentru hacking.

Cum să te protejezi: generează automat opțiuni, astfel încât acestea să nu poată fi prezise sau adunate toate răspunsurile posibile. Acum acest lucru nu mai provoacă probleme, literele și simbolurile sunt colectate automat, la fel ca exemplele aritmetice.

Obținerea numelui câmpului

Cum să piratați: trebuie doar să luați numele câmpului captcha din cod și să utilizați programul pentru a-i intercepta valoarea dacă nu se schimbă niciodată.

Cum să te protejezi: folosește un nume de câmp dinamic, adică se schimbă de fiecare dată. Trebuie să fie criptat, astfel încât alte programe să nu îl poată citi și să primească un răspuns. Cheia de decriptare va fi localizată pe server; aceasta nu poate fi obținută fără acces la scriptul serverului.

De exemplu, un captcha este stocat în câmpul Captcha. Atunci este foarte ușor să creezi un program care să citească valoarea din el. Puteți selecta manual un nume sau puteți utiliza baza de date a celor mai populare, care sunt stocate în acces deschis. Cu toate acestea, dacă numele este numit în mod constant diferit și nu doar un cuvânt, ci, de exemplu, o secvență de litere „fghtn” sau „qpvbn”, atunci va fi mai dificil de urmărit. Și cea mai sigură opțiune: criptați această secvență.

Ocoliți captcha folosind OCR

OCR - tehnologie de recunoaștere a textului pentru conversie în vizualizare digitală, disponibil pentru editare. Exemplu program popular - ABBYY FineReader. Dintre cele libere, dar mai puțin cunoscute: ocropia, . Tot ce trebuie să faceți este să configurați parametrii necesari si incarca o poza.

Metoda este folosită și pentru recunoașterea captcha online. Programul citește imaginea și introduce valori în câmp. Cum funcționează algoritmul intern:

  1. Imaginile cu litere sau cifre sunt eliminate de zgomot pentru o recunoaștere clară a caracterelor.
  2. Este împărțit în fragmente separate cu un singur semn.
  3. Fiecare caracter este comparat cu originalele preîncărcate în baza de date.
  4. La final este afișată valoarea totală.

Pentru a vă proteja împotriva hackingului folosind OCR, sunt create captch-uri speciale cu o cantitate mare zgomot, simboluri ciudate. Semnele pot fi atât de distorsionate încât nici măcar o persoană nu va găsi răspunsul corect de prima dată.

Pentru a ocoli, trebuie să găsiți diferite originale, astfel încât, în majoritatea cazurilor, sistemul să poată identifica corect simbolul. Avem nevoie de fonturi și codificări diferite.

Cum să protejați captcha de OCR:

  • aplicați imaginii zgomot de aceeași culoare ca și personajele principale;
  • adaugă caractere suplimentare și separat în text vă cere să introduceți doar câteva dintre ele, și nu toate (cum va face robotul);
  • literele și cifrele sunt plasate la diferite niveluri;
  • utilizați un design unic, non-standard.

Măsurile aplicate împiedică introducerea automată a caracterelor.

Scripturi scrise

Această metodă nu este o soluție completă. Este folosit ca instrument auxiliar pentru ca sistemul OCR să poată identifica caracterele cât mai clar posibil.

Programatorul scrie un script folosind biblioteci speciale care:

  • Șterge în mod preliminar imaginea de zgomot, caractere inutile și fundal;
  • lucrează cu culori pentru a nu interfera cu procesul de recunoaștere;
  • decupează zonele inutile, lăsând doar semne;
  • aliniază textul.

Folosind un proxy

Serviciile proxy permit utilizatorului să navigheze în rețea în mod anonim. Astfel, își ascunde adresa IP reală, locația și alte informații despre sine. Devine imposibil să-l urmăriți fără echipament special, așa că blocarea prin IP nu are succes.

Pentru a ocoli, trebuie să aveți acces la bazele de date de servicii proxy. Acestea pot fi fie gratuite, fie distribuite comercial pe site-uri închise. Algoritmul principal constă în schimbarea constantă a IP-ului. În acest caz, este posibil ca site-ul să nu emită un captcha, deoarece aceleași acțiuni sunt efectuate de adrese diferite.

Această metodă de ocolire a fost una dintre primele care au fost inventate.

Cum să folosești Google pentru a-și sparge propriul captcha

În 2017, un dezvoltator a postat o modalitate de a ocoli reCaptcha de la Google pe blogul său, descriind întregul proces în detaliu.

Acest tip de captcha diferă de altele prin faptul că utilizatorului i se arată o imagine împărțită în mai multe părți. I se cere să indice toate fragmentele pe care este reprezentat obiectul X. El le bifează, iar dacă totul este corect, răspunsul este numărat. Are si un analog audio, cand robotul suna numere, si unul text cu un test pe care doar o persoana il poate rezolva.

Algoritmul de bază a fost următorul. A fost necesar să descărcați fișierul audio și să îl convertiți într-un format WAV care să recunoască Google Speech API de recunoaștere. Drept urmare, a primit o secvență digitală, pe care a încărcat-o pe site și a primit un captcha gata făcut. Dacă a fost găsită o versiune text, atunci pagina a fost pur și simplu actualizată până când formatul audio a fost disponibil.

  1. Concentrați-vă pe raportul dintre preț și cantitatea de muncă. Pentru a recunoaște câteva mii de captcha-uri pe zi, ei aleg versiuni mai scumpe de programe care pot procesa o mulțime de informații. Dacă obiectivele dvs. sunt mai mici, serviciile online sunt potrivite, majoritatea fiind gratuite.
  2. Când alegeți un serviciu gratuit, verificați disponibilitatea restricții suplimentare. În mod ideal, nu ar trebui să existe. De exemplu, limitele de recunoaștere sau timpul de probă.
  3. Dacă te hotărăști cu un schimb de interpreți, verifica-i reputația citind recenziile pe diverse surse. Unii îi înșală nu numai pe interpreți, ci și pe clienți.
  4. Descărcați programe din surse de încredere. Acum piața devine mai putine programe, acestea sunt înlocuite de servere care nu trebuie instalate pe un computer și funcționează non-stop.

Programe și servicii pentru recunoașterea captcha

Dintre programele de recunoaștere captcha, se remarcă CapMonster 2. Se bazează pe tehnologia OCR. Costul depinde de numărul de fluxuri - 1, 5 și 20 și, în consecință, 37 USD, 57 USD, 97 USD.

Caracteristici principale:

  • înaltă performanță - milioane de captcha-uri pe zi;
  • bază de date mare de captchas acceptate;
  • instruire în noile tipuri de captchas atât de la dezvoltatori, cât și de la utilizatori;
  • achiziționați fluxuri suplimentare pentru tariful profesional.

Puteți returna programul în termen de 14 zile de la cumpărare și taxa de abonare se plătește anual.

Schimburile cu interpreți reprezintă o soluție universală. În primul rând, captcha-urile sunt recunoscute într-un timp natural. Roboții funcționează mai repede decât un om de mai multe ori, astfel încât un site care utilizează protecție va vedea un hack conform statisticilor. Dar dacă o persoană intră în captcha, atunci analiza se va încadra în limite normale.

În al doilea rând, sunt disponibile toate tipurile de captcha care pot fi recunoscute de oameni. Acest lucru nu garantează 100% bypass, deoarece toată lumea poate face greșeli.

În al treilea rând, este ieftin. De obicei, până la 50 de ruble pentru 1.000 de bucăți, dar pentru cele complexe poate fi de 150.

Exemple de schimburi cu interpreți:

Vă rugăm să clarificați regulile de lucru cu serviciile din regulile acordului de utilizare.

Să rezumam

Programatorii pot face greșeli din cauza neglijenței, a lipsei de testare sau pur și simplu a ignoranței. Hackerii profită de defecte de securitate și găsesc modalități de a distruge un sistem. Sunt create programe speciale Pentru recunoaștere automată captchas și servicii online care funcționează atât contra cost, cât și gratuit.

Bună ziua, doamnelor și domnilor.

Serviciile de recunoaștere automată a captcha pot ajuta într-o mare varietate de situații. De exemplu, facilitează foarte mult munca programelor de colectare nucleu semantic– Kay Collector, SlovoYob etc., aplicații pentru verificarea unicității textului și rescriere – AntiPlagiat.

La volume mari același text sau interogări, este posibil să întâmpinați un prompt captcha care apare la fiecare 10 secunde. Nu foarte convenabil, nu? Anti-captcha vă lipsește de nevoia de a introduce manual aceleași numere și litere. Acest lucru este făcut de alți oameni care câștigă bani rezolvându-le. Trebuie să plătiți doar pentru serviciile care oferă intrare automată a captcha.

Majoritatea programelor care colaborează cu servicii online (Wordstat, Google Analytics etc.) necesită introducerea constantă a captcha. Nu este benefic pentru astfel de proiecte online să aibă roboți care lucrează cu ei, așa că încearcă din toate puterile să lupte cu acest lucru.

Dar cum rămâne cu simplii webmasteri care decid să colecteze semantică sau să analizeze date de la serviciile de analiză? O faci manual? Nu este o decizie foarte rezonabilă, mai ales că acum există o mulțime de programe pentru decriptarea captcha și sunt gratuite.

Captcha rezolvată oameni adevărați, primind o recompensă pentru aceasta. Acestea funcționează într-o fereastră specială, al cărei script redirecționează captcha din programul dvs. direct către ei. La intrare corectă apare auto-umplerea. Aplicația dumneavoastră funcționează fără probleme și nu mai trebuie să vă faceți griji.

Site-urile de recunoaștere Captcha oferă angajaților lor un tarif fix pe captcha. Dumneavoastră, ca clienți, trebuie să depuneți o anumită sumă a echilibra. Incet va scadea.

Serviciile de intrare automată nu necesită investiții mari. 300 - 400 de ruble pentru câteva luni, sau chiar șase luni, vor fi destul de suficiente. Dar depinde și de cantitatea de utilizare.

Folosind coduri speciale sau date dintr-un cont de pe un astfel de site, te poți integra aplicația potrivită cu serviciul.

Lista de servicii online pentru recunoașterea captcha

Dacă doriți și ca utilitățile dvs. să funcționeze în modul „auto”, atunci trebuie să vă familiarizați cu această listă. Aici îți voi prezenta în atenție cele mai populare site-uri care te vor ajuta să scapi de nevoia de a introduce manual captcha.

RuCaptcha

RuCaptcha este un proiect popular care rezolvă problema de lucru cu multe aplicații. Prețurile aici sunt mai mari decât în ​​altele, cu 10 ruble, dar calitatea și viteza de lucru corespund acestui lucru.

Poate funcționa cu toate tipurile de verificare a robotului, așa că nu trebuie să vă faceți griji dacă apare brusc un nou captcha de la Google, unde trebuie să selectați unele semne rutiere etc., utilizatorii RuCapcha se pot descurca cu ușurință în câteva minute. minute.

În rest, serviciul este similar cu celelalte. API ușoară, integrare cu aproape orice program și, cel mai important, un numar mare de interpreți. Mulți oameni știu în timp liber, ajutând astfel utilizatorii obișnuiți.

2Captcha

Resurse în limba engleză, foarte asemănătoare cu RuCapcha. prețul mediu pentru 1.000 de presupuneri - o jumătate de dolar. Pe baza acestui fapt, putem ajunge la concluzia că prețurile sunt aceleași ca pe piața CSI.

2Captcha funcționează excelent cu Google. De regulă, există lucrători vorbitori de engleză care se specializează exclusiv în captchas Google. Cu opțiunile rusești (de la același Yandex) poate apărea o problemă. Dar cred că va fi și un interpret acolo.

Anti Captcha

Anti Captcha este un serviciu modern (fost Antigate) care oferă servicii pentru rezolvarea automată a simbolurilor. Proiectul se distinge prin cel mai simplificat API, un număr mare de interpreți și prețuri mici.

Prețurile relativ ieftine și serviciile de înaltă calitate cu siguranță nu vă vor lăsa indiferent. Site-ul este celebru pe Runet și, prin urmare, timpul mediu de rezolvare a simbolurilor este de doar 10 - 15 secunde. Adică, aproape că nu va trebui să așteptați deloc până când captcha-ul dvs. este rezolvat.

Proiectul este potrivit pentru recunoaștere direct în browser. O opțiune utilă reciproc, care îi poate ajuta pe începători să câștige bani și, în același timp, să ușureze munca profesioniștilor.

Ce serviciu să alegeți rămâne la latitudinea dvs. de a decide. Fiecare are propriile sale avantaje și dezavantaje. Un lucru se poate spune: fiecare proiect a funcționat deja suficient perioadă lungă de timp. Nu trebuie să vă faceți griji că veți fi înșelat, banii vă vor fi furați sau orice viruși va fi trimis pe computer. Acest lucru cu siguranță nu se va întâmpla, totuși, acest lucru nu se poate spune despre alții.

Aveți grijă când alegeți un serviciu anti-captcha. RuNet este plin de falsuri care comit fraude. Dacă te hotărăști brusc să încerci un proiect mai ieftin, necunoscut, atunci ar fi mai bine să verifici recenziile despre el înainte de a-l folosi. Este foarte posibil ca aceasta să fie o resursă de phishing care colectează bani de la utilizatori creduli.

Instrucțiuni pentru lucrul cu serviciile

Odată ce alegeți un serviciu online anti-captcha, va trebui să îl utilizați cumva. De obicei, astfel de servicii au chei speciale– le primești în cont, după care le introduci într-un câmp special din aplicație. Ca parte a materialului de astăzi, mă voi uita la RuCapcha.

Să mergem la secțiunea „API pentru webmaster”, unde vedem așa ceva.

Există un câmp „cheie captcha” aici – de asta avem nevoie. Copiem această cheie și mergem la setările anti-captcha ale programului nostru.

Bifați caseta „Utilizați serviciul anti-captcha”, selectați serviciul din lista derulantă și introduceți cheia. Gata! Acum, aplicația noastră va „rezolva” automat captcha folosind serviciul corespunzător. Nu este necesară nicio acțiune suplimentară din partea dvs. Doar completați-vă contul pe site în timp util.

Setările din toate aceste programe sunt aproape aceleași. Și în Key Collector, și în SlovoYob și în orice altă aplicație, totul va arăta aproximativ așa cum am descris.

Concluzie

Acum știi cum să ocoliți introducerea caracterelor și diverse verificări „Ești robot?”. folosind servicii online. Practică convenabilă și implementare simplă. Puteți elimina captcha din viața voastră pentru totdeauna reumplendu-vă echilibrul doar ocazional. De regulă, se cheltuiesc foarte puțini bani pentru astfel de proiecte, dar există atât de multe beneficii.

În același Key Collector, acest captcha se poate bloca foarte des, împiedicându-vă să vă faceți treaba. Și așa, am conectat programul la serviciu, am început să colectăm nucleul semantic și ne putem desfășura treaba. Același lucru se aplică și altor utilitare care necesită introducerea constantă de caractere.

Pe această pagină vă voi spune despre un alt tip de câștig de bani pe internet - introducerea captcha pentru bani. Am pregătit o listă cu cele mai populare site-uri pentru a câștiga bani introducând captcha. Aceste servicii pot fi utile și pentru a lucra cu diverse programe a folosi anti-captcha.

Cred că nu are rost să spunem ce este un captcha :) vedem chestia asta peste tot. Dar probabil că nu mulți oameni știu ce câștigă din asta.

Câștigați bani introducând captcha

Ei bine, dacă ați folosit vreun software (program) pentru unii acțiuni automate pe Internet, există de obicei un element de meniu pentru introducerea tastei anti-captcha peste tot.

Această cheie este emisă de serviciile de recunoaștere captcha în timpul plății. Cheia arată de obicei ca o serie de litere și numere. Introduceți această cheie în program și serviciul vă va recunoaște pentru suma depusă.

Deci, cine credeți că recunoaște acești crackpot-uri în aceste servicii 🙂, câțiva admini?.. Și câți ar fi capabili să recunoască?.. Bineînțeles că nu. Ei recrutează muncitori care stau și rezolvă puzzle-uri și sunt plătiți.

Dacă sunteți interesat de acest tip de câștiguri, atunci alegeți un serviciu pentru dvs., puteți să le faceți pe toate, desigur, și să începeți.

Pentru a accesa serviciul, dați clic pe imagine .

Lista serviciilor de recunoaștere captcha

  1. Cel mai avansat și multifuncțional.


  • Abilitatea de a rezolva la telefon.
  • Costul pentru client este de la 14 ruble. pentru 1000 captchas.
  • Plata - carduri, sisteme de plata.
  • Pentru un angajat - de la 10 la 30 de ruble. pentru 1000 de captch-uri rezolvate, în funcție de suma pariată de client.
  • Retragere la WebMoney de la 30 de ruble.

2. Un analog al primului numai în engleză și în dolari.

  • Prețul anti-captcha este de la 0,5-1,2 USD per 1000 de captcha.
  • Taxa pentru rezolvarea captcha este de aproximativ 0,4 USD.
  • Retragere către WebMoney de la 0,5 USD.

3. Un alt serviciu burghez pentru a face bani pe captcha.

  • La înregistrare, va trebui să introduceți codul „0808”.
  • Plătește între 0,8 și 1,5 USD per soluție.
  • Retragere de la 3 USD la WebMoney.

4.

Această extensie de browser va rezolva automat captcha pe orice site web.

  • Pentru Chrome.
  • Firefox.
  • Safari.

5.

  • Prețul pentru client este de la 14 ruble. pentru 1000 captchas.
  • Multe feluri.
  • Pentru un angajat - de la 1 - 10 copeici.
  • Retragere la WebMoney de la 10 ruble.

6.

  • De la 1 USD per 1000 captchas.
  • Fara venit.

7.

  • De la 0,7$ /1000.
  • Pentru un angajat - de la 1 - 10 copeici. Lucrarea se desfășoară pe domeniul - kolotibablo.com.

8.

  • De la 1,29 USD pentru 1000 captchas.
  • Nu sunt muncitori.

9.

Acest serviciu oferă plata pentru rezolvarea captch-urilor de către terți.

De exemplu, instalați un captcha pe site-ul dvs. web sau link-uri de pe Internet.

Urmărește videoclipul care povestește despre toate posibilitățile.

Probabil, mulți internauți, cel puțin într-o zi, au trebuit să introducă un captcha, asta modul obișnuit definiții program automat esti robot sau om? Așadar, se întâmplă că trebuie să definiți o mulțime de imagini și nu doriți să pierdeți timpul introducând fiecare dintre ele.

    • Criterii pentru alegerea unui program pentru recunoașterea captcha
    • Sul programe gratuite pentru a ocoli captch-urile și diferențele lor

Dacă te confrunți cu o astfel de problemă, există o soluție - servicii online care te vor ajuta să nu pierzi timp suplimentar introducând captch-uri. Nu este un secret pentru nimeni că atunci când programele de recunoaștere a utilizatorilor sunt îmbunătățite (determinând dacă este o persoană sau un robot), programele care pot sparge securitatea și recunoaște automat captcha sunt, de asemenea, îmbunătățite. Există programe scumpe precum OCR care fac o treabă excelentă. Dar, vezi tu, cine vrea să cheltuiască o mulțime de bani pentru a recunoaște pozele. Deoarece situații fără speranță nu se întâmplă, o soluție se găsește și în acest caz - serviciu online gratuit, și merită remarcat faptul că el nu este singurul. Mai jos vom arunca o privire mai atentă asupra opțiunilor disponibile.

Criterii pentru alegerea unui program pentru recunoașterea captcha

Dacă sunteți angajat în orice activitate care necesită recunoașterea constantă a codurilor, atunci este logic să achiziționați o versiune scumpă a programului, în cazul în care trebuie să efectuați procesul în cauză nu atât de des, nu ar trebui să aruncați a suma mare Bani, pentru așa ceva serviciu gratuit, care nu este greu de folosit.

Există zeci de astfel de servicii, iar utilizatorul are posibilitatea de a folosi oricare dintre ele, așa că va fi o mulțime din care să aleagă.

Pentru a face alegerea potrivita Dintr-o asemenea varietate de programe, trebuie luate în considerare următoarele aspecte:

  • În primul rând, serviciul pe care îl alegeți trebuie să fie complet gratuit. Acest criteriu este cel mai important, așa că asigurați-vă că nu există restricții în acest sens;
  • serviciul selectat trebuie să poată „ghici” text în limba rusă fără acest criteriu, este puțin probabil să puteți automatiza procesul de introducere a captchas;
  • numărul de captchas care poate fi determinat automat ar trebui să fie nelimitat.

Urmăriți videoclipul - Cum să activați recunoașterea captcha prin antigate, rucaptcha, captcha24, captchabot pe DelphiXE5

Lista de programe gratuite pentru ocolirea captch-urilor și diferențele dintre acestea

Deci, să începem să ne uităm la cele disponibile opțiuni gratuite, urmatorul la rand serviciu online Google Drive. Pentru a utiliza programul în cauză, va trebui să vă înregistrați acest curs de evenimente așteaptă utilizatorul în aproape toate serviciile cu un scop similar. În acest caz. Dacă ați creat vreodată înainte. De exemplu, un blog pe blogspot, atunci nu veți avea nevoie de înregistrare în acest caz. Este posibil aici intrare automată astfel de captcha: PDF, JPG, PNG și GIF. Trebuie remarcat faptul că dimensiunea fișierelor pentru recunoaștere nu trebuie să depășească 2-3 MB.

Serviciul online OCR Convert. Aici utilizatorul nu va trebui să se înregistreze. Formatele captcha acceptate sunt: ​​JPEG, GIF, BMP. Trebuie remarcat faptul că fișierele salvate au forma de link-uri URL, a căror extensie este format TXT. Aici utilizatorul poate încărca simultan 5-7 documente.

serviciu i2OCR. Pentru a recunoaște captch-urile, trebuie mai întâi să vă înregistrați. Nu pot fi încărcate mai mult de 10 fișiere și documente în același timp. Utilizarea acestui serviciu este convenabilă și simplă. Formatele pe care le recunoaște sunt: ​​GIF, PBM, PGM, PPM.

Voi demonstra aceste tehnici pe un captcha experimental. Ca subiect de testare am ales captcha unui anume Rafontes, pe care l-am intalnit cand cautam materiale pentru articolul precedent.

Exemplu de captcha generat:

A trebuit să folosesc un fundal diferit, deoarece autorul nu l-a postat pe cel original (sau nu l-am putut găsi), dar acest lucru nu va afecta rezultatul.

Preproces

Ca rezultat al acestei acțiuni, vom obține o secțiune decupată maxim a unei imagini monocrome cu text.

În primul rând avem nevoie separați fundalul de text. Analizăm imaginea și codul de generare a imaginii. Primele erori sunt evidente:

  • Utilizează o singură culoare pentru întregul test de cod
  • Culoarea pentru text este generată în intervalul rand(0, 200), 0, rand(0, 200), respectiv pentru R G B (este suficient să selectați culorile doar în acest interval)
  • Fundal cu o mulțime de Culori diferite(nu va afecta statisticile culorii cele mai frecvent utilizate)

Acum, pe baza acestor fapte, analizăm culoarea fiecărui pixel din întreaga imagine și îl selectăm pe cel mai frecvent utilizat. S-a dovedit 8C0074(în formă hexagonală). Setăm o mică eroare din ea și selectăm această culoare și cele ușor asemănătoare cu ea, ținând cont de eroare. Pe toate cele selectate le vopsim cu negru, restul cu alb. Rezultă această imagine:

După cum puteți vedea, am primit textul practic fără distorsiuni. Adevărat, a mai rămas o singură linie, dar avem un algoritm de tăiere complicat (mai multe despre el mai jos), pe care această linie nu îl poate influența.

Acum selectați zona cu codul.
Deoarece textul nostru este cel mai întunecat punct, încercăm să găsim algoritmic acest punct. Mai întâi definim limitele orizontale:

Acum definim limitele verticale:

Linia a rămas aici deoarece acea zonă este încă percepută de funcție ca o zonă foarte întunecată. Dar acum, pe baza acestor limite, le rafinăm într-un al doilea cerc, pe orizontală:

De ce este eliminată această linie acum, vă întrebați? Pentru că acum au fost analizate mai puține „coloane de pixeli” și atunci când a fost analizat de algoritm, a fost dezvăluit că în această zonă sunt prea multe coloane cu un pixel negru și, prin urmare, acesta este zgomot. Acum să clarificăm chenarul vertical:

Deoarece zona de definire a devenit mai mică, acum acea linie care era zgomot a devenit o pată insuficient de întunecată și a fost eliminată complet. Deci avem o secțiune cu text. Desigur, acest algoritm uneori nu selectează corect zona dorită. Dar, conform testelor mele, numărul de definiții incorecte nu depășește 5%, ceea ce poate fi de fapt neglijat.

Segmentarea

Acum sarcina noastră este să împărțim imaginea rezultată în zone separate cu simboluri.

Desigur, puteți calcula, căuta limite de caractere etc. Dar dacă analizezi din nou codul de generare, poți găsi o altă eroare.

  • Spațiul dintre fiecare caracter este întotdeauna de 15 pixeli

Desigur, uneori, din cauza dimensiunii simbolurilor, acestea depășesc cincisprezece pixeli, apoi trebuie să mai mușteți unul sau doi pixeli din simbolul vecin. Dar acest lucru nu este critic. În general, să descompunem imaginea:

Acum, după cum putem vedea, există o zonă goală în jurul unor simboluri. Dar mai avem nevoie de simbolul în sine. Folosim funcția de decupare pentru fiecare caracter și potrivim imaginile rezultate în dreptunghiuri care măsoară 17x27:

Aceste imagini vor fi trimise individual pentru recunoaștere.

Recunoaştere

Vom efectua recunoașterea FĂRĂ nicio noutate rețele neuronale. De ce? Rolul decisiv a fost jucat de faptul că nu există o singură bibliotecă demnă pentru Windows. Noi vom folosi recunoaștere normală prin măști de caractere.

Pentru a face acest lucru, noi, având acces la codurile sursă, hai să generăm o grămadă poze alb-negru pentru fiecare caracter cu unghiuri de rotație diferite (de la două până la patru grade) și marimi diferite font (de la 20 pt la 30 pt). Fiecare imagine rezultată, după cum ați ghicit, este plasată într-un dreptunghi care măsoară 17x27. Fiecare imagine rezultată se numește mască.

Pentru fiecare literă am generat 10-15 măști. În principiu, este suficient, dar dacă măriți numărul de măști, puteți crește procentul de recunoaștere.

În general, toate imaginile trimise la intrare sunt comparate cu măști, iar algoritmul determină care masca se potrivește cel mai bine cu imaginea noastră, pe baza acesteia, făcând o concluzie despre ce caracter este scris în imagine.

rezultate

Pentru test, am obținut 200 de caractere zgomotoase generând o imagine și împărțind-o în simboluri. Și am rulat testul în mod programatic. Și atenție!
Rezultat: Succese: 172 Erori: 28 Procent: 86%
Adică, fiecare caracter din captcha va fi recunoscut cu succes cu o probabilitate de 86% !

Puțină matematică. Să calculăm procentul de probabilitate de recunoaștere a captcha cu succes:
Pentru captchas cu 4 caractere: 0,86^4= 54%
Pentru captchas cu 5 caractere: 0,86^5= 47%

In medie fiecare secunda Captcha va fi recunoscut cu succes.

Având în vedere că fiecare captcha durează aproximativ 1 secundă și, în medie, vor fi necesare 2 secunde pentru recunoașterea cu succes. Acesta este un rezultat foarte excelent.

Surse

Scriptul generează și recunoaște captcha în sine. Un exemplu de scenariu din imagine dat ca exemplu de autorul captcha:

(Imaginea se poate face clic)