Pretrained computer vision classifier
Identify if photo has good composition with one API call.
A pretrained if photo has good composition classifier that sorts an image into one of 2 categories. Use the if photo has good composition API immediately, no training required, then adapt it to your own data when you need more.
Try the if photo has good composition classifier
Drop in a photo and get the prediction back. No signup, no setup.
What this if photo has good composition classifier recognizes
A sample of the 2 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 if photo has good composition 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": "Poorly Composed",
"labelId": "label_...",
"confidence": 0.92
}
Under the hood
Trained on a Nyckel-curated dataset covering 2 if photo has good composition 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 if photo has good composition classification
Professional Photography Review
Photography studios can utilize the image composition identifier to automatically evaluate submissions from freelance photographers. By identifying well-composed images, studios can streamline the selection process for portfolios and client projects, ensuring only high-quality work is considered.
Social Media Optimization
Social media management tools can integrate this function to analyze user-generated content before posting. By flagging images with poor composition, brands can ensure that only visually appealing content is shared, enhancing their overall online presence and engagement rates.
E-commerce Product Listings
Online retailers can implement composition analysis to assess product photos uploaded by sellers. By filtering out images lacking proper composition, the platform can maintain a high standard for product visuals, improving customer experience and potentially increasing conversion rates.
Educational Tools for Photography
Photography training platforms can use this function as a learning aid for students. By providing feedback on the composition of student submissions, learners can receive targeted guidance for improvement, helping them enhance their skills.
Stock Photo Curation
Stock photography websites can leverage composition evaluation to curate their image libraries more effectively. By prioritizing images with strong composition, these platforms can attract more professional clients looking for high-quality visuals for their projects.
Real Estate Listings
Real estate agencies can use composition analysis for photos submitted by agents. By ensuring that only well-composed images are featured in listings, agencies can enhance the appeal of properties, leading to quicker sales and improved customer interest.
Advertising Campaigns
Marketing agencies can integrate this functionality to evaluate creative assets for ad campaigns. By ensuring that all images used in promotions have good composition, agencies can enhance the impact of their ads, leading to higher engagement and return on investment.
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 if photo has good composition 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 if photo has good composition 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.