[tool] [tutorial] Free AI Person Detection for Blue Iris

Can you share what URL you are using to cancel the alert? I haven’t been able to get this working.
Sent from my iPhone using Tapatalk
Similar others are posting:
I run BI locally on the same host.

You can test it in the browser and should see the last image icon on the left side of BI change.
AI has a bug it doesn't send the cancel that he fixed in a future release too so if the browser works and just AI isn't sending that's why, the tool bug.

Sadly it would appear that some cameras running H.265 do not work with this function. After your post I began to think it was pilot error on my side but after several hours of testing I have proven conclusively that the issue is to do with camera compatibility. For example I have amongst others two HikVision cameras (see attached) one works with switching H.265 streams the other will only work when set for H.264. I could post all the settings but you would simply see that they are all the same with the exception of camera stream resolutions.

I have 6 HikVision and my nest camera recording. Are your HikVision running same or latest firmwares? Maybe they have an issue in FW differences and thus different results? Mine are on latest dated few months back. Also on the one not working if you upgrade the firmware factory reset it just to be safe but end of the day H265 is a standard like H264. So long as you're not using the "+" camera should ideally not matter because a video stream is a video stream. I know Hik did have some bugs in the original FW my cameras came with and even bugs the newer FW made but it only related to the + which I don't use so I don't care on that one hah.
 
  • Like
Reactions: pmcross
Similar others are posting:
I run BI locally on the same host.

You can test it in the browser and should see the last image icon on the left side of BI change.
AI has a bug it doesn't send the cancel that he fixed in a future release too so if the browser works and just AI isn't sending that's why, the tool bug.



I have 6 HikVision and my nest camera recording. Are your HikVision running same or latest firmwares? Maybe they have an issue in FW differences and thus different results? Mine are on latest dated few months back. Also on the one not working if you upgrade the firmware factory reset it just to be safe but end of the day H265 is a standard like H264. So long as you're not using the "+" camera should ideally not matter because a video stream is a video stream. I know Hik did have some bugs in the original FW my cameras came with and even bugs the newer FW made but it only related to the + which I don't use so I don't care on that one hah.
Running the latest firmware so not much to do there. It's not a big deal for me as I don't record continously but its something to be considered by others. When they are unable to get stream switching to work I recommend that they try with H.264 if they are using H.265.
 
Has anyone got mqtt setup? Every time I go set up the settings and then I close out of the actions window and then go back in mqtt is disabled. Same thing happens when I save, mqtt check box is unchecked. Running Vorlon CD version 1.81
 
Thanks to Chris for getting the trigger cancels to work. My only remaining gripe is that i have to use the "trigger an alert list image" to get the alerts to work. Then when viewing the alerts, all the still images are in there (all the false positives i mean).

Is there any way to get rid of those and still have the AI too work?
 
Thanks to Chris for getting the trigger cancels to work. My only remaining gripe is that i have to use the "trigger an alert list image" to get the alerts to work. Then when viewing the alerts, all the still images are in there (all the false positives i mean).

Is there any way to get rid of those and still have the AI too work?

This is intentional. When I asked Ken to implement the timeline clearing I actually requested he leave the alert list images because otherwise you now have no way to know about false negatives occurring. Leaving them allows one to see that an alert was canceled that maybe shouldn't have been and thus you can take action. This I felt was a good compromise because the timeline is now cleaner and you can jump clicking on that. If he removed the images on cancel you'd never know if it was canceling alerts it shouldn't have potentially. Keep min mind AI Tools isn't the only applicable use here so you have to think of it as a best compatibility overall vs. design thing because another use case may not use AI Tools and thus you don't have that to ref back for those said false negatives.

If you don't want to see them you can still use the flag=1 to flag and just filter that image list to use flags only and you won't see them.
 
@juched Ah yes I did thank you :) I still have a strange issue with the mask though, when I draw anything the image zooms in and I can't zoom back out to draw more masking

Any one got this issue?

Yes, had the exact same issue. Can’t quite remember how I fixed it but I believe what I did was removed any existing bitmaps for that camera which were at the smaller size and then re-started the application a couple times. At that point it stopped doing the weird zoom thing.
 
This is intentional. When I asked Ken to implement the timeline clearing I actually requested he leave the alert list images because otherwise you now have no way to know about false negatives occurring. Leaving them allows one to see that an alert was canceled that maybe shouldn't have been and thus you can take action. This I felt was a good compromise because the timeline is now cleaner and you can jump clicking on that. If he removed the images on cancel you'd never know if it was canceling alerts it shouldn't have potentially. Keep min mind AI Tools isn't the only applicable use here so you have to think of it as a best compatibility overall vs. design thing because another use case may not use AI Tools and thus you don't have that to ref back for those said false negatives.

If you don't want to see them you can still use the flag=1 to flag and just filter that image list to use flags only and you won't see them.

Haha, I just emailed Ken before I saw your reply asking for the option to also remove canceled (&flag=0) alerts from the list. I definitely understand your reasoning to keep them, but personally don't want canceled alerts cluttering the list. Filtering the list by flags works, as you said, but my non-AI cameras don't use flags and I'd like to see all alerts side-by-side in the list without needing to toggle between flagged and non-flagged. I can't imagine juggling all the user requests he must get. :)
 
Question for anyone that knows.

So I have my trigger and cancel alert URLs setup and working now.
I have my alerts set to re-trigger after 3 seconds unless active still and my image set to capture every 3.5 seconds.
The issue I have is sometimes the trigger image does not match the AI image because of delay processing or the fact that BI may only show one on the alert but it took 2 images.

For example BI takes snap, adds to thumbnail, while AI is processing another image is taken. The first image ends up as canceled because say a car JUST started into scene so motion was hit but not enough for AI to know it's a car. The second image knows it's a car so now it triggers. Well BI only made the one entry despite 2 images so when it triggers the email is the first image with maybe nothing in it of enough value. Funny part now is the alert is cleared from timeline due to the cancel but flagged cause I'm still using flags for trigger at the moment but this is because the same issue, multiple images but 1 entry in BI.

Anyway I know in the example you could just modify the motion to require being in the view more before trigger but that was just my example. It happens in other cases where you wouldn't want to do this so trying to understand if my times need to be adjusted or some way to make BI use all the images and not just the one etc.

What am I doing wrong or can I change to improve this? I only want multiple images in case the first misses. I may see if Ken can set an image time limit too (for times when it is constant motion I don't need non-stop alerts and maybe dynamic mask don't help since it can move a lot). Like mowing the yard and being lazy to not want to disable alerts. Well I can get hundreds of emails LOL. I only need 1 if it's a legit one and still part of the same alert but that's another issue.

Thanks!
I have the same problem you described. I think it could be improved if BI didn't use &flag=0 to cancel an alert, but instead use a dedicated tag. Meaning, it could work like this instead...

&flag=1 would add a flag to the alert
&flag=0 would remove the flag from the alert

and then use a separate command like...

&valid=0 would cancel the alert
&valid=1 would remove the "cancel" (mark it confirmed)

This would allow AI Tool to confirm or cancel an Alert in BI, but also allow it to "change its mind" and toggle the Alert's status based on what's found in the next image, as long as it's during the current triggered state.

So in your example, the first image only has a small portion of the car visible so AI Tool finds nothing relevant and would fire the cancel URL (which includes &valid=0) to cancel the alert in BI. But then AI Tool processes the second image with the entire car visible in the frame, so this time AI Tool would fire the trigger URL (which includes &valid=1) so it would no longer be marked "Canceled" in BI. This avoids having an alert that's marked as both flagged and canceled due to multiple images like you described.

BI could achieve the same thing with the current "flag" workflow if the states were mutually exclusive, meaning both "flag" and "canceled" couldn't be active at the same time. However, I like using flags for other purposes, so that's another reason to use a dedicated tag that doesn't rely on flags.
 
Last edited:
  • Like
Reactions: fenderman
So if the answer is someplace in the 102 pages of this thread you will need to forgive me for not being able to find it. This is more of an annoyance than a issue but I am sure there is a answer. I switched back to the Original Gentle Pumpkin version (for now) Everything is being run local on the same machine. I started running sub streams in BI after I figured out how to do it, and now every 3rd or 4th? image will error out because it is grabbing a Sub stream pic ( I think) I see the error when it is sent to Telegram. the pic is smaller than the mask. How do I correct this? If I use the force size option will that do the trick? is there a way that it can be told to ignore the smaller pic? TIA for your help!
 
I want to thank all the contributors of this project! Tonight I finally got everything working with Unraid Dockers and VM. It took a couple of weeks off and on but I got it! I have DeepStack running in docker and my VM Windows 10 with BI. My Dell R720XD with Xeons is running smooth now but only after some trial and errors with 'local' drives and SMB drives. I had to create local drives and an local SSD drive in the VM to make it work consistently. I am running the VorlonCD fork and still tweaking it.

Now I got a weird thing with my AI Tools History Tab.... The frame captures are gone and all I have it thisScreen Shot 2020-10-16 at 10.31.29 PM.png

how to I go back to the format with the image so that I then start working on my masks and other stuff?

again THANKS!!!!

How do I get the preview
 
So if the answer is someplace in the 102 pages of this thread you will need to forgive me for not being able to find it. This is more of an annoyance than a issue but I am sure there is a answer. I switched back to the Original Gentle Pumpkin version (for now) Everything is being run local on the same machine. I started running sub streams in BI after I figured out how to do it, and now every 3rd or 4th? image will error out because it is grabbing a Sub stream pic ( I think) I see the error when it is sent to Telegram. the pic is smaller than the mask. How do I correct this? If I use the force size option will that do the trick? is there a way that it can be told to ignore the smaller pic? TIA for your help!

Needless to say this should not happen and personally I have never experienced it and am also using the original version. Can you advise your configuration I.E Cloned not Cloned BI Version.
I suspect that BI cannot decide which stream to capture for Telegram due to a setup parameter. If you are Cloning make sure you pre trigger period is either 0 or 2 seconds. This will tell BI which stream to use for Telegram. 0 will force it to use the Sub Stream and ~1-2 seconds should tell BI you want the mainstream.
 
So if the answer is someplace in the 102 pages of this thread you will need to forgive me for not being able to find it. This is more of an annoyance than a issue but I am sure there is a answer. I switched back to the Original Gentle Pumpkin version (for now) Everything is being run local on the same machine. I started running sub streams in BI after I figured out how to do it, and now every 3rd or 4th? image will error out because it is grabbing a Sub stream pic ( I think) I see the error when it is sent to Telegram. the pic is smaller than the mask. How do I correct this? If I use the force size option will that do the trick? is there a way that it can be told to ignore the smaller pic? TIA for your help!

I found I needed to increase the pre-trigger recording time to a larger number to avoid this happening. If too short sometimes the code to pull from the main stream fails and falls back to using the sub stream image. What is your pre-trigger recoding setting?
 
I want to thank all the contributors of this project! Tonight I finally got everything working with Unraid Dockers and VM. It took a couple of weeks off and on but I got it! I have DeepStack running in docker and my VM Windows 10 with BI. My Dell R720XD with Xeons is running smooth now but only after some trial and errors with 'local' drives and SMB drives. I had to create local drives and an local SSD drive in the VM to make it work consistently. I am running the VorlonCD fork and still tweaking it.

Now I got a weird thing with my AI Tools History Tab.... The frame captures are gone and all I have it thisView attachment 72746

how to I go back to the format with the image so that I then start working on my masks and other stuff?

again THANKS!!!!

How do I get the preview

This is a window sizing issue. Seems high dpi UIs in windows are quirky. I suggest shutting down AITool and then removing the registry key entries that recorded the last window location and size. Then launch again and see what shows up.

The other thing to try to play with windows compatibility mode settings for High DPI.

The images are there they are just all the way over to the right on your screen.
 
All... I'm currently running the latest release of BI and I'm still experiencing BI crashes sometimes when triggers occur. When I disable AI Tools, no crashes after multiple triggers are occuring. I really believe the crashes are related to the external trigger from AI Tools. I'm wondering if the syntax I'm using is a problem. Could some of you running AI Tools and experiencing no crashes share your external trigger command syntax? I'd like to try it. Thanks!
 
@Village Guy I'm running the latest version of BI 5.3.3.9 and I am not cloning any cameras. I have each camera set up the same. it all local, rtsp streams. I use EZVIZ cameras so the MAKE is generic (no other choice) and I am just using /Streaming/Channels/102 in the Sub stream (+params) window. @juched you may be onto something, I checked my pre triggers and noticed the ones working fine are all set to 5 sec but the other 2 that throwing errors were set to 10 and 15 sec, so I am assuming I can back those off and it may right itself....we will see. Thanks to both of your for the assist.
 
@Village Guy I'm running the latest version of BI 5.3.3.9 and I am not cloning any cameras. I have each camera set up the same. it all local, rtsp streams. I use EZVIZ cameras so the MAKE is generic (no other choice) and I am just using /Streaming/Channels/102 in the Sub stream (+params) window. @juched you may be onto something, I checked my pre triggers and noticed the ones working fine are all set to 5 sec but the other 2 that throwing errors were set to 10 and 15 sec, so I am assuming I can back those off and it may right itself....we will see. Thanks to both of your for the assist.
The pre trigger buffer just needs to be long enough so that BI can capture a key frame (iframe) Most cameras let you setup how often to send key frames. Mine for example are setup to send a key frame every 20 frames so a buffer of 1 or 2 seconds is more than enough.
 
  • Like
Reactions: balucanb
The pre trigger buffer just needs to be long enough so that BI can capture a key frame (iframe) Most cameras let you setup how often to send key frames. Mine for example are setup to send a key frame every 20 frames so a buffer of 1 or 2 seconds is more than enough.
Moved it to 5 sec still getting this- [17.10.2020, 10:27:37.087]: ERROR: The resolution of the mask './camera/LSyardsd.png' does not equal the resolution of the processed image. Skipping privacy mask feature. Image: 768x432, Mask: 1920x1080 going to try and move it down to 2 sec. and see what that does. Trying to find the image it skipped but I don't see it in the folder or the error folder? If that does not work I guess I can delete the mask png and try to re do it? Don't think that will help though considering I did not have this issue until I started running sub streams.
 
Moved it to 5 sec still getting this- [17.10.2020, 10:27:37.087]: ERROR: The resolution of the mask './camera/LSyardsd.png' does not equal the resolution of the processed image. Skipping privacy mask feature. Image: 768x432, Mask: 1920x1080 going to try and move it down to 2 sec. and see what that does. Trying to find the image it skipped but I don't see it in the folder or the error folder? If that does not work I guess I can delete the mask png and try to re do it? Don't think that will help though considering I did not have this issue until I started running sub streams.

I noticed BI changed what stream the JPEG image is saved from recently. It used to use the sub stream but now it uses the main stream so you may need to edit your mask image again.
 
Moved it to 5 sec still getting this- [17.10.2020, 10:27:37.087]: ERROR: The resolution of the mask './camera/LSyardsd.png' does not equal the resolution of the processed image. Skipping privacy mask feature. Image: 768x432, Mask: 1920x1080 going to try and move it down to 2 sec. and see what that does. Trying to find the image it skipped but I don't see it in the folder or the error folder? If that does not work I guess I can delete the mask png and try to re do it? Don't think that will help though considering I did not have this issue until I started running sub streams.
Have you set the mask for the hd 1920x1080 stream. The mask will need be changed to match the stream being processed.