BLOG · MANUFACTURING · CONDITION MONITORING
Condition-based monitoring from inspection photos: grade every photo, then watch the rate of change
Learn how to grade asset inspection photos with AI, track condition changes in your CMMS and route uncertain grades to inspectors. A practical setup guide.
Turn inspection photos into a condition signal
Most condition-based monitoring talk is about sensors: vibration, temperature, oil analysis. But a lot of what decides when an asset needs work is visible: corrosion on a flange, wear on a belt, a crack in a weld, a coating starting to lift. Field technicians already photograph those assets on every round. The photos go into a system, and mostly nobody looks at them again.
Those photos can be a monitoring signal. The method has two steps:
- Grade every photo the way your inspectors would, with a model trained on photos they've already graded.
- Track the grade over time, per asset. The rate of change, how many grades an asset drops per month, tells you which assets need attention first.
Why photos, when you have sensors
Sensors are good at what they measure: a bearing heating up, a motor vibrating. They don't see:
- surface condition: corrosion, coating loss, staining, leaks;
- wear you can see but not measure easily: belts, liners, seals, brushes;
- damage: cracks, dents, deformation, missing parts;
- assets with no sensors at all: structures, tanks, racking, pipework, which is most of a site.
A technician's photo covers all of those. The problem isn't collecting photos; it's that judging thousands of them by eye doesn't scale, and two inspectors grade the same photo differently.
Sensor tools change too. AWS announced the end of support for Amazon Lookout for Equipment on 7 October 2026, so teams reviewing their monitoring stack are looking again at what they measure and how.
Step 1: grade each photo the way your inspectors do
Most maintenance teams already have a grading scale, written down or not:
| Asset | Grades |
|---|---|
| Steel structure, pipework | Corrosion 1 (none) · 2 (light surface) · 3 (moderate) · 4 (heavy) · 5 (section loss) |
| Conveyor belt | Good · Worn · Replace soon · Replace now |
| Coated surface | Intact · Minor breakdown · Widespread breakdown |
| Weld or bracket | No defect · Watch · Repair |
An image classifier trained on photos your inspectors already graded learns that scale: your grades, and where your team draws the line between them. Each new photo gets a grade and a confidence. The confident ones are recorded; the unsure ones go to an inspector.
This is the same job as grading produce or rating car damage. In our public benchmarks, which are not about industrial assets:
- Fruit quality, good against bad: right 98.7% of the time, learned from 150 photos per grade (food grading benchmark).
- Car photos, damaged or not: right 94.0% of the time with the Dedicated AI Image Model. At its default review cutoff, 77% were above the review cutoff, with 98.4% damaged-or-not accuracy in that subset (car photo benchmark).
Both also showed the catch: rare grades can be missed when training examples are scarce. In the car benchmark, corrosion and flaking had under 70 training photos each, and the models mostly missed them. Your worst grades are your rarest, so collect those on purpose.
Step 2: the rate of change is the grade over time
Once every photo has a grade, the rate of change is simple arithmetic. Keep three things per photo: the asset ID, the date and the grade.
| Asset | 12 Mar | 10 Jun | 9 Sep | Change |
|---|---|---|---|---|
| Pump P-14 flange | 2 | 3 | 4 | +2 grades in 6 months |
| Tank T-3 base | 2 | 2 | 2 | stable |
| Conveyor C-7 belt | Good | Worn | Worn | +1, then stable |
From that table you can rank assets by:
- how bad they are now (the current grade), which is what most inspection programs already do;
- how fast they're changing (grades per month), which catches the asset that's still "only" a 3 but went from 2 to 3 in six weeks;
- sudden jumps: two grades or more between visits.
Treat a sudden jump as a question, not an alarm. It's often a bad photo: the wrong asset, a different angle, glare, a wet surface. Send those photos to a person before anyone schedules work.
The arithmetic lives wherever your asset data does: your CMMS or EAM, a spreadsheet, or a query in your data warehouse. An AI agent can do it too: ask for the grade of each new photo, then query the history.
A second approach worth testing: judge the change directly
Some wear is slow enough that it never crosses a whole grade between visits. For that, an untested approach worth evaluating is training on pairs: put last visit's photo and this visit's photo side by side as one image, and label each pair the way an inspector comparing them would: no change · worse · much worse. The model then learns to judge change itself.
It needs photos taken from a similar position each visit, and pairs your inspectors have judged. Test it on your own photos before relying on it.
Grades are ordered categories, not equal physical measurements. A move from 2 to 3 need not represent the same amount of deterioration as 3 to 4. Use grade changes to prioritize inspection, not to estimate material loss or a failure date.
Setting it up
1. Pick one asset type and one scale
Start with one asset type that's photographed often and graded consistently: corrosion on one kind of structure, wear on one kind of belt. One scale per model. Don't mix "corrosion grade" and "asset type" in one list of categories.
2. Collect graded photos
Pull photos your inspectors have already graded from your inspection app, CMMS or shared drive. For an initial pilot, aim for 20 to 50 photos per grade, and more for grades that look alike. Include the borderline cases. They're what the model needs most.
If your past photos aren't graded, have two inspectors grade a few hundred. Where they disagree, settle the rule first; a model can't be more consistent than the rule it learns.
3. Upload
Either:
- a ZIP with one folder per grade (
Grade 1/,Grade 2/…), or - a spreadsheet with a link to each photo, its grade and, if you have one, the technician's note. A picture model can read a note alongside each photo and learn from both.
Keep a separate test set of assets the model never trained on. Keep all photos of each asset together when preparing your training and test files; retain the asset ID for grouping and reporting, not as a model input.
4. Check, train and read the report
StayCharted checks the photos before training: photos that look like they belong in another grade, the same photo under two grades, near-identical shots, files it couldn't read. Then train:
- the AI Image Classifier Model first: about a minute, no GPU;
- the Dedicated AI Image Model if the differences between grades are small details.
Read accuracy per grade, not just the overall score. A model can be 95% right overall and still miss most grade 5s.
5. Connect it to the photos as they arrive
- From your inspection app or data pipeline: call the model through the API with each new photo, and write the grade and confidence back next to the asset.
- From an AI agent: Claude and ChatGPT can ask the model through StayCharted's connector; any agent that can call an API can too.
- In batches: upload a ZIP or a spreadsheet of the week's photos and get back a spreadsheet with a grade and a confidence for each.
6. Review the unsure ones, then retrain
Set a review cutoff. On Essentials and Business, grades below it wait in the Review Queue for an inspector, with similar past photos beside each one. Their corrections become training photos for the next version, which may reduce review workload after retraining and evaluation.
Mistakes to avoid
- The same asset in training and testing. Ten photos of one flange split across both makes the test too easy. Keep each asset's photos together (step 3).
- Asset ID or location as an input. Don't give the model the asset ID or site as a column to learn from. It will learn "this asset is usually grade 3" instead of reading the photo. Use it only to keep rows together.
- Inconsistent photos. Different distances, angles and lighting each visit make every grade harder and every change look like a jump. Give technicians a short photo guide: same spot, same distance, flash off in daylight. A painted reference mark on the asset helps.
- Too few photos of the worst grades. Collect them deliberately; they're the ones that matter.
- Never retesting. Retest after a new camera, a new site or a new coating.
Where a person stays in the loop
- Unsure grades go to an inspector. Confident answers can still be wrong: sample them too. You choose the review cutoff.
- Sudden jumps go to a person before anyone acts on them.
- Maintenance decisions stay with your team. The model grades photos; whether to repair, replace or shut down is your engineers' call.
What it doesn't do
- It doesn't measure. It gives a grade, not a crack length or a percentage of area corroded. Bands work as grades ("0–10% / 10–25% / over 25%").
- It doesn't keep the asset history. Your CMMS, EAM or data warehouse keeps the timeline; the model grades each photo.
- It doesn't find where the defect is in the photo. It grades the whole picture.
- It doesn't replace sensors. It covers what the camera can see.
- It doesn't learn grades it hasn't seen. A new grade needs examples first.
Common questions about visual condition monitoring
What is condition-based monitoring?
Maintaining an asset when its condition says it's needed, rather than on a fixed schedule. The condition can come from sensors, from inspection photos, or both.
Can AI assess asset condition from photos?
Yes, for condition you can see. A model trained on photos your inspectors already graded gives each new photo a grade on your scale, with a confidence, and sends the unsure ones to a person.
How do you measure the rate of change of an asset's condition from photos?
Grade every photo, keep the grade with the asset ID and date, and compare grades over time: grades per month, or a jump between visits. That's a simple query on your asset data.
How many photos do I need?
A starting pilot might use 20 to 50 per grade; this is not an accuracy guarantee. Collect more for grades that look alike and for the rare, severe grades. Test on assets the model hasn't seen.
Is this predictive maintenance?
It's the condition half of it. A trend in graded photos shows which assets are getting worse fastest. Predicting a failure date needs your failure history too.
Does our data train anyone else's model?
No. Your photos train only your workspace's models.