This is the repository of our project for Winter 2021 CMPUT466 (Introduction to Machine Learning) at the University of Alberta taught by Dr. Alona Fyshe.
CAPTCHA is the acronym for "Completely Automated Public Turing test to tell Computers and Humans Apart".
Our goal is to study and compare the performance of four machine learning algorithms predicting text-based CAPTCHA images, including two segmentation-free algorithms, convolutional neural network (CNN) and recurrent neural network (RNN), and two segmentation-based algorithms, support vector machine (SVM) and k-nearest neighbours algorithm (k-NN).
For a brief overview, please see the presentation slides or watch the short presentation YouTube video below.
If you are looking for more details, please read the following project final report.
Use this notebook to run the code if possible, as many of the .py
files in the repository contain duplicate code and some of them may be out-of-date.
This notebook combines all the code in this GitHub repository organised in sections. In case you do not own a University of Alberta email account, please click here to see the notebook.