Closed ozett closed 3 years ago
This is likely due to the min_area_match
value being too low in the image in the right. To be considered a match the percentage and area of the bounding box both need to match the defined values.
The default value is 10000
, which means any image below 100x100 won't be counted as a match. I have a lower value set on my personal setup (50x50). This is how you can override the default.
23x27 is probably too small to ever want to consider, but I did notice it was a 100% match. I can probably adjust the logic to not look at the bounding box if the match is 100%. What do you think?
objects:
face:
min_area_match: 2500
i will give this a try.
maybe helpful to anchor the Readme.md section with this options, to link to more information in such issues?
edit: it is not obvious, why it is green or red. And that is depens on that settings. may the gui can state cause for coloring more obvious?
another one: could be FR to have such settings per camera? because some cams shoot a face from far distance, other from near, so the value could be camera-specific different?
What do you think of this update on the matches page? Anytime a result is considered a "miss" then the output of why it was a miss will be below the row. You can also now hover over the green/red label to show what it means.
detail information below the red/green matches button is great!
i think the hover dont help. because red is obviously a miss.
the hover would only help, if it gives precise information about the cause for the miss.
like miss of low confidence
or miss of low box & low conf
, but is already stated below.
maybe this details should be also written in red color? or the box information or the confidence information should be written in red? if thats the cause for misses? edit:
I slightly changed the UI and decided to put the messages in a tooltip to reduce the height of those cards. I like the idea of using red to indicate what was missed, what do you think of this?
looks good. i will try how this feels in my checking daily routine can i pull a new beta?
looks good. i will try how this feels in my checking daily routine can i pull a new beta?
Yes, the new beta should have it.
lots of small-area detection are matches. i know the category-detection is correct .. what to do about this?
How are you hoping to treat that image? Because you have the min_area_match
set to 2500
it won't ever consider a result a match if the area is smaller than that.
i can test to set min-area that low <600 to get all small faces. will see if that causes more false-positives... thx, it try and i will report back, until than on hold...
i can zone-out some areas on that specific cam, but to prevent from false-positives i need a min_area_match
per camera.
the general value hits all cams, but others cams a fine with that value.
make a FR: min_area_match
per camera.
i can zone-out some areas on that specific cam, but to prevent from false-positives i need a
min_area_match
per camera. the general value hits all cams, but others cams a fine with that value.make a FR:
min_area_match
per camera.
Ah makes sense. I can try to work on making it a setting per camera over the weekend.
Great news! thx 🎁 😄
maybe you send matches & misses
over MQTT ? separate topic?
i could ignore min_area_match
in a second_step if i get all the log-info over mqtt.
that way i could consider high-confidence a match in a second step myself
discovered the log and found this helpful . would be great to get it over mqtt...
I have the per camera setting just about done. Working on updating the README now. I changed a few other things too with how confidence and some settings are defined. You'll be able to do more at a per camera level.
Global settings will look like this.
# global detection settings (default: shown below)
detect:
match:
# save match images
save: true
# include base64 encoded string in api results and mqtt messages
# options: true, false, box
base64: false
# minimum confidence needed to consider a result a match
confidence: 60
# hours to keep match images until they are deleted
purge: 168
# minimum area in pixels to consider a result a match
min_area: 10000
unknown:
# save unknown images
save: true
# include base64 encoded string in api results and mqtt messages
# options: true, false, box
base64: false
# minimum confidence needed before classifying a match name as unknown
confidence: 40
# hours to keep unknown images until they are deleted
purge: 8
# minimum area in pixels to keep an unknown result
min_area: 0
And then the new per camera settings.
cameras:
front-door:
snapshot:
# apply masks before processing image
masks:
# list of x,y coordinates to define the polygon of the zone
coordinates:
- 1920,0,1920,328,1638,305,1646,0
# show the mask on the final saved image (helpful for debugging)
visible: false
# size of camera stream used in resizing masks
size: 1920x1080
# override global detect variables per camera
detect:
match:
# save match images
save: true
# include base64 encoded string in api results and mqtt messages
# options: true, false, box
base64: false
# minimum confidence needed to consider a result a match
confidence: 60
# minimum area in pixels to consider a result a match
min_area: 10000
unknown:
# save unknown images
save: true
# include base64 encoded string in api results and mqtt messages
# options: true, false, box
base64: false
# minimum confidence needed before classifying a match name as unknown
confidence: 40
# minimum area in pixels to keep an unknown result
min_area: 0
I also moved the masks stuff here now because it makes more sense to keep it nested with the other camera settings.
I'll tag this issue in the commit when I push it to the beta build.
config section for cameras looks like in frigate-config. keep that similar, thats good!
I'll tag this issue in the commit when I push it to the beta build. (do i get notice somwehow about time for pulling the beta? i am not that experienced with commit handling...)
The actions page on the repo will show you when the build is done. I just did the last little update for the night, so should be good to pull now.
I need to test it more tomorrow, but everything I did tonight was working as intended. If you run into any weird issues let me know.
how is the new config-snytax handelt? do i have to pull the beta, start with the old-config and re-write in the new running-instance? or must the config-change for the new option done beforhand on the file?
You can leave your old config on there and start running the new build, it'll just use all the defaults. Then just update it from the UI to match the new format.
masks:
# list of x,y coordinates to define the polygon of the zone
VALUES SHOULD DIRECTLY GO HERE?
#- 3599,1896,1229,207,44,201,30,2118
coordinates:
#- 1920,0,1920,328,1638,305,1646,0
- 1403,608,2485,1520,0,1520,664,592
# show the mask on the final saved image (helpful for debugging)
visible: true
maybe the new sub-section "coordinates" is not like in frigate. and can be ommited?
coordinates
are required in the masks section now. This is what my test one looks like. The coordinate values are copied directly from Frigate.
cameras:
manual:
masks:
coordinates:
- 1920,0,1920,328,1638,305,1646,0
# - 0,1080,296,1080,322,827,0,835
visible: true
size: 1920x1080
Closing since this is now included in the 1.0.0
release.
Sorry if this unnecessarily re-opens this issue. I had a question about the per camera mask camera stream size.
cameras:
front-door:
snapshot:
# apply masks before processing image
masks:
# list of x,y coordinates to define the polygon of the zone
coordinates:
- 1920,0,1920,328,1638,305,1646,0
# show the mask on the final saved image (helpful for debugging)
visible: false
# size of camera stream used in resizing masks
size: 1920x1080
The description in the comment says "size of camera stream used in resizing masks" is this the 'detect' stream or the 'record' stream in frigate? Thanks!
@jakowenko I have updated min_area_match to 5000 in the settings but it doesn´t seem to take any effect, as double-take is still comparing the size against 10000, am I doing anything wrong or is there an issue with min_area_match?
This is my config:
# Double Take
# Learn more at https://github.com/jakowenko/double-take/#configuration
# enable authentication for ui and api (default: shown below)
auth: true
mqtt:
host: 192.168.0.253
username: !secret mqtt_user
password: !secret mqtt_pass
objects:
face:
min_area_match: 5000
frigate:
url: http://192.168.0.209:5000
# if double take should send matches back to frigate as a sub label
# NOTE: requires frigate 0.11.0+
update_sub_labels: true
attempts:
# number of times double take will request a frigate latest.jpg for facial recognition
latest: 0
detectors:
compreface:
url: http://192.168.0.209:6001
# recognition api key
key: !secret compreface_key
i had a match, and compreface-button is green, i had somehow another match, re-recognized, and compreface state correct person, but is in RED. why is this?