8000 GitHub - ECU-Sensing/stemx: StemX Coding Content July 2023
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

ECU-Sensing/stemx

Repository files navigation

CIEI

StemX East Carolina University Hack-A-Thon 2023

Challenge:

Your task is to use image capturing AI (Object Detection) to specific items shown on a camera. Your goal is to transmit the count of a specific type of item to our network, PITON, using a LoRa radio. You will be given the LoRa radio, starter code for data transmission, and a set of identifiers. Your team will work to modify the existing code to perform the following tasks:

  1. Use the image capturing AI to identify and count a specific type of item.
  2. Transmit the count of the identified item over LoRa to the PITON network.

The challenge is divided into two phases:

Phase 1: Determine a good sampling window. Modify the provided starter code to use the image capturing AI, identify and count a specific item (during sample window), and transmit the count over LoRa to the PITON network. Points will be awarded based on how quickly your team can accomplish this. You are required to commit your code in your teams hackathon folder before you are considered complete with Phase 1.

We will hold a review between phases where teams will be given a short amount of time to review and correct their code before Phase 2

The winner of the Hack-A-Thon will be the team with the highest total points from both phases.

Format:

Each team will consist of 3. We will distribute all necessary materials.

Getting Started:

You will be provided with a Raspberry Pi, a LoRa radio, and a set of identifiers (keys.py).You have been given starter code, which you will need to modify to train the Object Detection AI (detect.py) and transmit data over LoRa. You will need to install the LoRa radio hat on the Raspberry Pi and connect it to the PITON network.

You may complete the tasks in any order that you choose. You have some experience with the Object Detection script as it is the same one that you used last week. You will now being enforcing a sample window instead of an infinite loop. The LoRa code is all new to you but you have been given starter code to help you get started. You may need to modify the code to transmit the count of a specific item over LoRa to the PITON network.

It is important to review each file and understand what is happening before makes changes.

YOU MUST adhere to the Data Formatting Guidelines to get full points!

Recommended Order (Phase 1):

  1. Read all .md Markdown files
  2. Review ClassroomPresentation PDF
  3. Modify the Object Detection Code detect.py. Look for # TODO 3.1. Find where you should be printing results and consider how you will use that to check for your class. Hint: We covered this yesterday names[int(c)] will return the class string for each object it sees. So if it sees a bird names[int(c)] == 'bird' will be true. 3.2. You are given an example of how to use time.time() to get the current time. Use those two tools to exit that detection loop after your sampling window is complete. Hint: If i run time1=time.time() and wait 30 minutes and run it again time2=time.time(). What do you think time1 - time2 will equal? 3.2. BEFORE you try to run the detect.py you must search through those import statements and make sure you have all the necessary supporting directories in the same location. Hint: Look at the folder names currently in /home/pi/yolov7 and see if any match your from or import statements . You can copy the ones you want right where you will need them.
  4. Setup LoRa Radio and Code 4.1 Follow RADIO.md and SOFTWARE.md
  5. Modify the data.py file to make sure you are transmitting your data the correct way. Check DATA.md
  6. Transmit your data to PITON 6.1 To run the LoRa code (transmit) you need to run: python3 main.py
  7. Commit Code with Git

Building Blocks:

Diagram

When Complete:

Once your team has successfully identified and counted a specific item, and transmitted the count to the PITON network, you have completed Phase 1 of the challenge. You will then be given a new set of instructions for Phase 2.

Phase 2 will begin for everyone at the same time. You will have a short amount of time to review and correct your code before Phase 2 begins.

Submission:

Your team's code should be committed to your team's folder in the provided GitHub repository. This is part of the challenge and will be considered during the scoring. You will COMMIT your code to the repository. DO NOT PUSH the code to the remote repository until the end of the challenge (Others will be able to see your work if you do)

Resources

Participants are encouraged to use any available resources, including the internet, to assist them in completing the challenge.

We look forward to seeing the innovative solutions that our teams will create!

About

StemX Coding Content July 2023

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

0