I apologize if the title doesn't make much sense, but I didn't know how to word it without it being far too long.
A little context: I'm working on a mobile app that is supposed to aid coffee farmers in tracking pest infestation on their farms. A feature we are working on is allowing farmers to dump the contents of their trap into a sieve and compare it to a picture on their phone. The app then asks them if the picture looks like it contains more or less pests in it than that of the one that is in front of them (we have a dataset of thousands of trap-catch pictures, each with their corresponding, scientifically accurate counts). After a few iterations of comparing pictures and choosing "more" or "less", the app converges on its best guess on what the rough count is for the farmer's trap.
At first, I used a simple min/max algorithm for this, but that was when the dataset of picture-counts was only about 30 pictures. We now have datasets of thousands of pictures and I needed to tweak my algorithm to compensate for that. At first glance, what seemed to make the most sense was to split the data up into "buckets" of picture/counts within certain ranges, for example:
{
"1000-2499": {
"pictureUrl": "count",
"pictureUrl": "count",
...
},
"2500-4999": {
"pictureUrl": "count",
"pictureUrl": "count",
...
},
"5000-7499":{
"pictureUrl": "count",
"pictureUrl": "count",
...
},
...
}
Using this, I want to be able to grab a picture from a bucket, narrow the estimated count down to being within a specific bucket/range, and then converging on a decently accurate estimate (without having the user iterate through the more/less process too many times). However I am having a hard time developing an algorithm for this. I may be overthinking this but any help or insight would help greatly. The goal isn't exactly that it will produce a good estimate (that is actually what we are testing by doing this method), but that the algorithm itself converges in the best way possible, with the assumption that the estimation will be accurate.
Edit- If I find a viable solution before anyone else posts one I will post it here for critiquing.