Coder Social home page Coder Social logo

mlennig / manual_object_detection Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 10 KB

Python 100.00%
object-detection image-processing image-recognition image-classification exif-metadata exif-data-extraction path-planning greedy-algorithm flight-path uav unmanned-aerial-vehicle unmanned-aerial-system

manual_object_detection's Introduction

Upon running, this code will:

1. Rename all the photos in the camera folder, using the floats (MUST HAVE A DECIMAL PLACE) from the heading.txt.

2. Move all renamed photos into the unprocessed folder, EXCEPT the heading.txt

3. Open a photo from your unprocessed_path.
 
4. Upon clicking on the photo, the program will prompt you with a dialog box. 

5. If you detected an object, you must fill in the required information. 

6. Next, choose the appropriate button (see: DIALOG BOX, below)

7. If an object was detected, a cropped image of the object (4' x 4') (location where you clicked) will be saved to your specified folder (see: MUST HAVE, below), along with it's corresponding JSON file. Cropped photo and JSON are named with an integer which increments with each new object recorded. 

8. If all objects in the current photo have been detected, the next image will open.

9. Once all images have been processed, the program will end. 

10. You will locate your specified folder (see: MUST HAVE, below) with the cropped images and JSON files and transfer them onto a USB. 


BEFORE THIS CODE IS FUNCTIONAL, YOU:

MUST HAVE:
1. A folder of images directly from the camera, and a .txt file with the headings of the drone, in the same order as the images appear in the folder (first heading listed corresponds to first image, e.g. GOPRO0001). ALL HEADINGS MUST BE FLOATS, AKA, HAVE A DECIMAL POINT AT THE END. (camera)
2. An empty folder of images (unprocessed_path)
3. An empty folder where you will keep the images once they have been processed (processed_path)
4. An empty folder folder where you will store your cropped images of the detected objects with their corresponding JSON (UAVConcordia)

MUST EDIT:
in clicpic.py:
unprocessed_path (This is the folder where the images that have already been viewed go)

camera (This is the folder where the images that have NOT BEEN RENAMED go, along with the HEADINGS.TXT)

self.processed_path(This is the folder where the images that have NOT already been viewed go)
self.uav_concordia (This is the folder where the images and JSONs will go. You will put this folder on a USB to deliver to the judges)

DIALOG BOX (appears when you click on an image):

"Record/Advance" = Record click coordinates, advance to next photo (there are no other objects in this image that I need to record)

"Cancel/Remain" = Do NOT record the click coordinates, I clicked somewhere by mistake. 

"Skip/Advance" = There are NO objects in this photo that I need to record, advance to next photo.

"Record/Remain" = Record click coordinates, there are MORE OBJECTS that I need to record in this photo. Do NOT advance me to the next photo yet. 

manual_object_detection's People

Contributors

mlennig avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.