Pretrained computer vision classifier
Identify id photo quality with one API call.
A pretrained id photo quality classifier that sorts an image into one of 10 categories — the quality of ID photos. Use the id photo quality API immediately, no training required, then adapt it to your own data when you need more.
Try the id photo quality classifier
Drop in a photo and get the prediction back. No signup, no setup.
What this id photo quality classifier recognizes
A sample of the 24 labels this pretrained classifier chooses between.
Need a label that isn't here? Clone the classifier into your Nyckel console and edit the label set to fit your data.
Call the id photo quality API
Get your own copy of this classifier behind your own endpoint — callable from any HTTP client:
curl -X POST "https://www.nyckel.com/v1/functions/YOUR_FUNCTION_ID/invoke" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"data": "https://example.com/photo.jpg"}'
import requests
response = requests.post(
"https://www.nyckel.com/v1/functions/YOUR_FUNCTION_ID/invoke",
headers={"Authorization": "Bearer YOUR_ACCESS_TOKEN"},
json={"data": "https://example.com/photo.jpg"},
)
print(response.json())
const response = await fetch("https://www.nyckel.com/v1/functions/YOUR_FUNCTION_ID/invoke", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"Content-Type": "application/json",
},
body: JSON.stringify({ data: "https://example.com/photo.jpg" }),
});
console.log(await response.json());
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.nyckel.com/v1/functions/YOUR_FUNCTION_ID/invoke');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{"data": "https://example.com/photo.jpg"}');
$headers = array();
$headers[] = 'Authorization: Bearer YOUR_ACCESS_TOKEN';
$headers[] = 'Content-Type: application/json';
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
$result = curl_exec($ch);
curl_close($ch);
echo $result;
Example response
{
"labelName": "Blurry",
"labelId": "label_...",
"confidence": 0.92
}
Under the hood
Trained on a Nyckel-curated dataset covering 10 id photo quality categories, served on Nyckel's own infrastructure — your image stays on Nyckel.
Send an image URL or file to the invoke endpoint; the response is a label with a confidence score.
Clone it, then correct predictions and add your own samples in the console — Nyckel retrains automatically, turning this into a custom model tuned to your data.
Where teams use id photo quality classification
Identity Verification
The 'id photo quality' identifier can be employed in identity verification systems to ensure that submitted ID photos meet the required quality standards. This enhances the reliability of the verification process, reducing the likelihood of fraudulent identities being accepted.
Online Banking Enrollment
Banks can utilize this function during the online account enrollment process to assess the quality of identity documents submitted by customers. By ensuring high-quality images, banks can mitigate risks associated with identity theft and improve the overall security of the enrollment process.
E-Government Services
Government agencies can integrate this identification tool into their online service platforms to verify that citizens' ID submissions are clear and comply with regulatory standards. This can streamline the application process for services such as passports, driver's licenses, and welfare programs.
Social Media Profile Authentication
Social media platforms can implement the 'id photo quality' identifier to ensure that users upload high-quality identification photos when verifying their profiles. This adds another layer of authenticity to user accounts, helping to prevent fake profiles and enhance community trust.
Travel Documentation Compliance
Airlines and travel agencies can use this function to automatically assess the quality of uploaded passport and visa images. Ensuring that these documents meet quality standards can help avoid boarding issues and enhance compliance with immigration regulations.
Employee Onboarding
Human resources departments can utilize the identifier during the onboarding process to verify the quality of employee identification submissions. This ensures that all identity documents are acceptable and reduces the risk of administrative issues during new hire processing.
E-Commerce Identity Verification
E-commerce platforms can implement this identifier during the seller registration process to assess the quality of uploaded ID photos. By ensuring that sellers provide high-quality identification, platforms can reduce the incidence of fraudulent listings and enhance buyer confidence.
Common questions
What's the difference between a zero-shot and a Nyckel-trained classifier?
A zero-shot classifier uses a large foundation model's general knowledge to pick between your labels — no task-specific training, so new or edited labels work immediately. A Nyckel-trained classifier has been trained on labeled examples and runs on Nyckel's own infrastructure, which typically makes it faster, cheaper per call, and more accurate on data that resembles its training set. The "Under the hood" section on this page shows which kind this classifier is, and any classifier can be adapted into a trained one by adding your own examples.
How do I know whether this will work for my application?
Honestly: we can't know in advance — it depends on your data stream and how closely it resembles what this classifier has seen. The reliable way to find out is to measure it on your own data: start invoking the classifier with real traffic, or upload and annotate a set of images in the console — make sure they look like your production data, not idealized examples. Nyckel's evaluation metrics then show you exactly how it performs on that data before you rely on it.
What happens when it makes a mistake?
No classifier is perfect, so Nyckel is built around the correction loop: invokes can be captured for review, you confirm or correct predictions in the console, and corrections become training data. Over time the model adapts to your data distribution — accuracy on your traffic improves with use rather than staying fixed.
Do I need training data to get started?
No. This id photo quality classifier works out of the box — clone it into your console and you'll have your own API endpoint in under a minute. Training data only enters the picture when you want to adapt it: your corrected predictions and uploaded samples improve the model, and you can also edit the label set to match your needs.
What does it cost to try?
Trying the classifier on this page is free with no signup. Cloning it requires a free account, and the free tier covers your first API calls each month — see nyckel.com/pricing for current limits and paid tiers.
Related classifiers
Ready to classify id photo quality at scale?
Add this pretrained classifier to your Nyckel console — you'll get a live API endpoint in under a minute, and a path to a custom model when you need one.