• Stars
    star
    104
  • Rank 330,604 (Top 7 %)
  • Language
    Python
  • Created over 7 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

🎲 Solve image based captchas using Tensorflow neural networks

Tensorflow Captcha Solver

Solve image based captchas using Tensorflow neural networks. This demo was developed for the DAHO.AM Conference in Munich, 2017.

This repository is unmaintained and the code might not work as expected. If you are looking for another Tensorflow-based solution, head over to: https://github.com/PatrickLib/captcha_recognize.

Getting started

Clone the repository:

$ git clone https://github.com/stekhn/tensorflow-captcha-solver.git

This guide was written for Mac users, but users might still find it useful.

Set up Python virtualenv

Create a new virtual environment:

$ virtualenv venv

Activate the virtual environment:

$ source venv/bin/activate

Check if the Python virtual environment is set up correctly:

$ which python
/Users/your-username/Development/venv/env/bin/python

Install dependencies:

$ pip install -r requirements.txt

Troubleshooting: Tensorflow could not be found:

Could not find a version that satisfies the requirement tensorflow==1.1.0 (from -r requirements.txt (line 51)) (from versions: )
No matching distribution found for tensorflow==1.1.0 (from -r requirements.txt (line 51))

If you encounter this error, try installing Tensorflow from the binary:

$ python -m pip install --upgrade https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.1.0-py2-none-any.whl

Linux or Windows users need to find another download link...

Generate captchas

Go to captchas folder:

$ cd captchas

Download SimpleCaptcha to the folder:

$ curl -O https://vorboss.dl.sourceforge.net/project/simplecaptcha/simplecaptcha-1.2-jdk1.5.jar

Extract SimpleCaptcha:

$ jar xf simplecaptcha-1.2-jdk1.5.jar

Run SimpleCaptcha:

$ javac Main.java && java Main

Train the neural network

Once you've generated the test data, go to the solver folder:

$ cd solver

Create the tensorflow records:

$ python captcha_records.py 

Train the network (Note, that the training runs until you stop it):

$ python captcha_train.py 

Evaluate the performance of the network:

$ python captcha_eval.py

Try to solve some captchas:

$ python captcha_predict.py

Everything working? Great! Go solve some captchas (on your own machine for developing purposes, 'f course).

Further info

If you want to see how a neural network is working, check out Tenserflow Graph Viz.

More Repositories

1

average-faces-opencv

πŸ‘¨πŸ» Calculate an average face from multiple images in Python with OpenCV and dlib
Python
22
star
2

blossom

Blossom is a CartoCSS map style for Open Street Maps
17
star
3

angular-portfolio

πŸ‘ My portfolio website made with AngularJS:
HTML
16
star
4

location-history

Visualize your Google Location History with Leaflet and the Leaflet heatmap plugin
JavaScript
16
star
5

got-relationships

Game of Thrones Relationship Chart
JavaScript
13
star
6

leaflet-workshop

πŸ—Ί Kartenvisualisierung mit Leaflet lernen
JavaScript
7
star
7

tap-through

πŸ‘†Simple tap-through storytelling, inspired by Instagram and AMP stories
JavaScript
5
star
8

gpu-price-surge-analysis

πŸ“ˆ Analysis on how the demand for cryptocurrencies is driving up GPU prices
JavaScript
5
star
9

programming-workshop

πŸ›  Grundlagen der Webentwicklung mit HTML, CSS und JavaScript lernen
HTML
4
star
10

black-friday

πŸ› Are Black Friday deals worth it?
JavaScript
4
star
11

d3-workshop

πŸ“Š Datenvisualisierung mit D3.js lernen
JavaScript
3
star
12

eu-parliament-votes

πŸ‡ͺπŸ‡Ί Visualize voting behaviour in the European Parliament
JavaScript
2
star
13

r-dataviz-workshop

πŸ–Œ Grundlagen der Datenvisualisierung mit R lernen
HTML
1
star
14

interactive-audio-drama

Template for interactive audio drama
JavaScript
1
star
15

parteiprogramm-analyse

Analyse der Parteiprogramme zur Bundestagswahl 2017
JavaScript
1
star
16

nebeneinkuenfte

Scraper um die NebeneinkΓΌnfte der Parlamentarier des 18. Deutschen Bundestags zu erfassen.
Ruby
1
star
17

german-elections-correlations

πŸ‡©πŸ‡ͺ Exploring correlations betwee German election results and demographics
JavaScript
1
star
18

us-elections-chart

πŸ‡ΊπŸ‡Έ How close were the last twenty presidential elections?
JavaScript
1
star