Duck Hunt AIGithub

Duck Hunt is a shooter game that was popular during the late 1990s and early 2000s. The game was of ducks flying across the screen to be shot by the player. This project is based on a variation of the original Duck Hunt that has different kinds of backgrounds and on-screen obstacles. Some of these obstacles include occlusion, contrast changes and wind.

The Duck Hunt game offered a problem that was solved through computer vision. More specifically, transfer learning was applied on a custom dataset via SSD MobileNet V2, SSD ResNet50 and YOLOv5. Various trade-offs were identified in ResNet being more accurate but slower for inference than MobileNet. The final solution came from fine tuning YOLOv5 which provided a high mean average precision (mAP) and a fast inference time.

The following clips demonstrate the final solution throughout various levels in increasing difficulty. A research paper was also developed alongside the implementation of this project's solution. The research paper can as well be found below. The levels range from 1-820 and the game works such that multiple shots can be taken in each frame. With that being said, the gun's crosshair does not always update to correct location - a constraint of the provided application.


Solution Demonstration

Level 100 - Easy
Level 100
Level 700 - Medium
Level 100
Level 800 - Hard
Level 100

Research Paper