Ideation: Passport & Visa Analyzer

Key Information

The challenge is finished.

Challenge Overview

Our client looks to implement an automated system for passport and visa recognition. Target solution should provide an optimal way to scan a passport (possibly, just machine-read any bar-codes / machine readable fields), and to process resulting images to get out of them:
  • Personal information (owner’s photo, first / last name, birth date, document ID number, issue / expiration date, place of issue, etc.);
  • Visa information. For each visa in passport it includes: visa type, countries it is valid for, issue / expiration date, ID number(s), is still valid or was it annulated, etc.
  • Optionally, we would like to verify that entire passport was scanned, i.e. that the total number of pages matches the expected one, that each page matches expected design for the passport of that country, etc. Think about two use cases: (1) we just want the person to prove that he has a valid visa to travel to specific country(-es); in such case we can ask to scan just the main page, and the page with visa; (2) we want a full scan of passport, to ensure that we have full information about visas a person has.
In this ideation challenge we want you to explore this subject and propose detailed proposals on the most optimal way to implement such system; from the best device to use for scanning of passport, to software solution to process the input and provide extracted data to the external system. Pay especial attention to the fact that we want to support passports and visas for a large list of countries (~100 of them), thus you should elaborate on the most efficient way to train / program your solution to work with such large list of possible passports / visas (including the best ways to get reference data for this training / programming). Also, take into account that resulting solution will be used in .NET project.

Final Submission Guidelines

This challenge will be judge subjectively. A good presentation of your solution is obviously important. Feel free to submit a written write-up / presentation slides / video / code snippets demonstrating key aspects of your proposal in practice.

In all cases, include a brief 1-2 pages abstract of your proposal. Ensure it covers such aspects as:
  • Does it use readily available software solutions? Are they free or paid? What are the costs?
  • If some parts of your solution should be hosted, what are available hosting options, and estimated usage costs, depending on the load (number of processed images per day)?
  • How your solution can be integrated with other systems? How easy / expensive will be its maintenance?
In other words, we are interested not only in purely technical aspects of the problem, but also in practical costs / maintainability of the possible solutions.


2018 Topcoder(R) Open


Final Review:

Community Review Board


User Sign-Off


ID: 30059555