Video CAPTCHA Experiment

Posted by Kurt on August 7th, 2008

You are invited to try a new video-based CAPTCHA developed within the Computer Science Department at RIT. A CAPTCHA is a challenge designed to distinguish humans from computer programs (’bots’) on the internet; they are typically implemented as a string of distorted characters which must be transcribed.

Many people find the text-based CAPTCHAs frustrating, so we have developed a video-based alternative. In our Video CAPTCHAs, a user must quickly label a video with three tags (words) describing its content.

We would appreciate it if you could help us evaluate the usability of this new approach by completing 20 Video CAPTCHAs. The experiment will only take about 15 minutes of your time. The task may be found at:

Thank you very much for your time.

Kurt Alfred Kluever (MS Student)
Richard Zanibbi (Supervisor)

Document and Pattern Recognition Lab
Department of Computer Science
Rochester Institute of Technology

Breaking the CAPTCHA

Posted by Kurt on May 12th, 2008

The CAPTCHA suffers several weaknesses: fixed font face, fixed font size, no distortions, trivial background noise, and it’s easy to segment. In this experiment, a three step algorithm has been developed to break the PayPal CAPTCHA. The image is preprocessed to remove noise using thresholding and a simple cleaning technique, and then segmented using vertical projections and candidate split positions. Four classification methods have been implemented: pixel counting, vertical projections, horizontal projections and template correlations. The system was trained on a sample of twenty PayPal CAPTCHAs to create thirty-six training templates (one for each character: 0-9 and A-Z). A separate sample of 100 PayPal CAPTCHAs were used for testing. The following success rates have been achieved using the different classifiers: 8% pixel counting, vertical projections 97%, horizontal projections 100%, template correlations 100%. Three of the trained classifiers out perform the 88% success rate of Pwntcha.



  1. Original:
  2. Grey Scale:
  3. Thresholding:
  4. Further Cleaning:


  1. Segmented:
  2. Padded:


  • Pixel Counting: 8% Break Rate
  • Vertical Projections: 97% Break Rate
  • Horizontal Projections: 100% Break Rate
  • Template Correlations: 100% Break Rate


The final paper including MATLAB source code, sample runs, and results can be downloaded here or from the RIT Digital Media Library.


A copy of the slides used for a presentation of this experiment can be downloaded here.


The 20 training and 100 testing PayPal CAPTCHA images are available to download here.

Source Code

Complete MATLAB code (281 lines, well commented) for preprocessing, segmenting, and classifying the images is available here.

YouTube Video

Note that this video wasn’t created by me. Skip forward to approximately the 1 minute mark.

Rule-based Office Monitoring System

Posted by Kurt on February 18th, 2008

As part of my Artifical Intelligence course, we developed a rule-based expert system that can autonomously govern a building’s environment to optimize user comfort and energy consumption, whilst providing safety and monitoring functions. The expert system has been developed using the Java programming language and the Java Expert System Shell (JESS). Rules are stored as an external resource and can be modified in real time without requiring a rebuild of the entire project. Write-up 1 includes problem description, design considerations, and implementation details. Write-up 2 includes testing results and a comparison to another system.

Seam Carving Project

Posted by Kurt on November 6th, 2007

For my Computer Vision course project, I implemented the seam carving technique by Shai Avidan of Mitsubishi Electronic Research Labs and Ariel Shamir of The Interdisciplinary Center and MERL. My final paper, presentation, and code for my seam carving project is now available.


My final writeup can be downloaded here.


Presentation available here!


Java code available here!
Matlab code available here!



Original image

Image with 100 lowest energy seams shown

Image with 100 lowest energy seams shown

Image with 100 seams removed (no noticeable artifacts)

Image with 100 seams removed (no noticeable artifacts)

Image with 250 seams removed (artifacts start to appear)

Image with 250 seams removed (artifacts start to appear)

Facebook Birthdays to iCalendar Exporter

Posted by Kurt on July 19th, 2007

Chris Tice and I developed a Facebook application that allows you to export all of your friends birthdays into an iCalendar file. The iCalendar file can be imported into Google Calendar, Microsoft Outlook, Apple iCal, KOrganizer, etc. It currently has over 4200 total users.  You can add the application here.

KillDupes mIRC Script

Posted by Kurt on August 15th, 2002

I developed a mIRC script to quickly kill duplicate lines in a file. Approximately 830 downloads to date.  It can be downloaded here.

PackTrack mIRC Script

Posted by Kurt on June 29th, 2002

I developed a mIRC script to track UPS packages en route to their destination. Approximately 1000 downloads to date.  It can be downloaded here.

NetNews Series mIRC Script

Posted by Kurt on October 17th, 2001

I developed a mIRC script to download, parse, and display news headlines from major news websites. It was basically a rudimentary RSS news reader. Approximately 3400 downloads to date. It can be downloaded here.

Modified version of Webby Blue
Copyright © 2008 All rights reserved.
**This is my personal blog. The views expressed on these pages are mine alone and not those of my employer.**