Skip to main content
The CoroNet License Plate Scanner provides an intuitive web interface for uploading vehicle license plate images. The system uses AI-powered OCR to automatically detect and extract license plate numbers from your uploaded images.

Uploading a License Plate Image

1

Access the Upload Interface

Navigate to the home page of the application. You’ll see the main upload interface with the title “Lector de Matrículas Inteligente” (Intelligent License Plate Reader).
2

Select an Image File

Click on the upload area that displays “Selecciona una imagen de matrícula” (Select a license plate image). This opens your system’s file picker.
The system accepts standard image formats including JPG, PNG, and other common image types. The file input uses the accept="image/*" attribute to filter compatible files.
Once you select an image, a preview will automatically appear on the screen, allowing you to verify you’ve selected the correct file.
3

Add Optional Metadata

Enhance your record by filling in the optional fields:
  • Propietario (Owner): Enter the vehicle owner’s name or identifier
  • Tipo de vehículo (Vehicle Type): Specify the vehicle type (e.g., sedan, truck, motorcycle)
  • Observación (Observation): Add any additional notes such as vehicle color, condition, or other relevant details
While these fields are optional, adding metadata makes it easier to search and filter records later in the system.
4

Submit the Image

Click the “Guardar Matrícula” (Save License Plate) button to submit your image. The system will:
  1. Upload and save your image with a timestamped filename (format: matricula_YYYYMMDD_HHMMSS.jpg)
  2. Process the image using GPT-4o mini vision model for license plate extraction
  3. Fall back to Tesseract OCR if the AI detection fails
  4. Store the extracted license plate number along with your metadata
  5. Display a success message: ”✅ Registro guardado correctamente”

AI-Powered License Plate Detection

The system employs a two-tier detection approach for maximum accuracy:

Primary: GPT-4o Vision

The application first attempts to extract the license plate using OpenAI’s GPT-4o mini model with vision capabilities. The AI is prompted to:
  • Extract only the visible license plate text from the image
  • Return just the plate number without additional commentary
  • Focus on alphanumeric characters and hyphens
The extracted text is automatically cleaned and normalized:
  • Converted to uppercase
  • Limited to alphanumeric characters and hyphens
  • Truncated to a maximum of 10 characters

Fallback: Tesseract OCR

If the GPT-4o detection returns “NO_DETECTADA” (not detected), the system automatically falls back to Tesseract OCR for a second attempt at text extraction.
The dual-layer detection system ensures maximum reliability even when one method fails. This hybrid approach combines the contextual understanding of AI with the traditional reliability of OCR.

Image Requirements

For best results when uploading license plate images:
  • Clarity: Use clear, well-lit photos where the license plate is visible
  • Focus: Ensure the license plate is in focus and not blurry
  • Angle: Front-facing shots work best, though the AI can handle some angle variation
  • Resolution: Higher resolution images generally produce better detection results
  • Lighting: Avoid heavy shadows or glare that might obscure plate characters

After Upload

Once your image is successfully uploaded and processed:
  • The record is immediately saved to the CSV database (see app.py:86-128)
  • Each record receives a unique sequential ID
  • The upload timestamp is automatically recorded
  • You can view the record in the records viewer
  • The image is stored in the uploads/ directory for future reference
After uploading, click the ”📜 Ver Registros” (View Records) button to immediately see your newly added entry in the records table.

Troubleshooting Upload Issues

Image Not Uploading

If you see the error “⚠️ Debes subir una imagen” (You must upload an image):
  • Ensure you’ve actually selected a file before clicking submit
  • Verify the file is a valid image format
  • Check that the file isn’t corrupted

License Plate Not Detected

If the system saves the record but shows “NO_DETECTADA”:
  • Try uploading a clearer or higher resolution image
  • Ensure the license plate is clearly visible in the photo
  • Check that lighting and focus are adequate
  • You can manually edit the CSV file if needed to correct the plate number

Page Not Loading

If the upload interface doesn’t appear:
  • Verify the Flask application is running (app.py:82-84)
  • Check that the uploads directory exists and has write permissions
  • Ensure your OpenAI API key is properly configured in the .env file

Build docs developers (and LLMs) love