The problem DeHazeXpert solves
DehazeXpert is designed specially for firefighting operations but can also be used with aunomous vehicles
Some of the use cases are
- To help manage forest fires. During a Forest Fire, the entire region gets covered with smoke and becomes difficult to see. With DeHazeXpert, the flames can be tagged for better firefighting and we can get clear visuals IN REAL TIME!
- Use with autonomous drones to make them autonomous fire-fighting drone. Whenever the drone detects flame and tags it, it moves to the location and brings the tagged flame to the centre of the frame and then drops water over it.
- To aid firefighters after a building catches fire, DeHazeXpert also tags the flames in real time and removes it automatically when the fire is put out, thereby, helping the firefighters keep track of fire at various locations.
- DeHazeXpert can be run on security Cameras , to see smoke-free and haze-free footage at all times. Also, it can detect the presence of any flame, which can then be alerted to the nearest security personnel.
- It can be used in autonomous vehicles for seeing through foggy areas. For example, it can used by Tesla Autopilot on a cold foggy morning.
What problem does DeHazeXpert solve?
During the firefighting operation, it becomes very difficult for the firefighters to see through the smoke. Our project aims to increase the visibility of the firefighters which in turn helps them to save more lives. Not just this, our project helps in identifying fires and tags it for identification and the tag is automatically removed once the fire is put out.
Not only this, We have also developed a dehazing-as-a-service website where the user can upload the video and download the de-smoked/de-hazed video.
Thus DeHazeXpert acts as a middleman between the camera and the display for increasing the quality and clarity of the video feed, along with features like fire identification, tagging and tracking.
Challenges we ran into
To be very honest, we ran into multiple problems which almost led us to give up. Here are a few of them and how we got over them:
- Backend Tech stack: Initially we tried to use streamlit but streamlit doesnt support standard video codecs, we would have to change the codec and then upload the file. This meant that we had to use a different codec all together and that was not a viable solution since the user had to convert to the required codec and then upload. So, we had to start over from scratch and this time we decided to use fastAPI.
- Video Processing Latency: A short video of 10 seconds, took about 2 minutes to dehaze. This made your solution unviable and we had to optimize our code for faster dehazing. After a lot of optmization, we were able to bring down the processing time to 30 seconds.
- Since we intially wanted to make it real time, we also had to make a version that runs 100% locally. The advantage with this version is that it is almost real time, with 300 ms latency. This was done by breaking the video streams into multiple frames and then paralelly running the algorithm on each frame.
These were just a few of the problems we faced, which took us the entire night to solve. Other than these, there were numerous other challenges but were solved easily.