generated from esd2-groupwork/template-repository
Compare commits
3 commits
main
...
Developmen
Author | SHA1 | Date | |
---|---|---|---|
041774d35a | |||
cfe18e0c3d | |||
0ad79ae5aa |
7 changed files with 69 additions and 4 deletions
|
@ -2,6 +2,8 @@
|
|||
|
||||
### Unity
|
||||
|
||||
#### PDR
|
||||
|
||||
| Task | Est. hrs | Task Ref. ID |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------ |
|
||||
| Find suitable *physical* camera for virtualization. | 2 | 1.1 |
|
||||
|
@ -12,17 +14,40 @@
|
|||
| Create a realistic test function that receives an input *t*, and moves the ball across the court by *f(t) = t * some-x-value*, where *f(t)* should be the entire length of the court when t = 2. | 2 | 1.6 |
|
||||
| **Verify test function can receive an input from MATLAB and ball follows motion. Verify images can be captured and saved with the tennis ball in different positions for initial PDR requirement.** | 1 | 1.7 |
|
||||
|
||||
#### CDR
|
||||
|
||||
| Task | Est. hrs | Task Ref. ID |
|
||||
| ---------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------ |
|
||||
| Finalize camera parameters (resolution, FOV, position) for initial system integration. | 3 | 1.8 |
|
||||
| Implement Unity handling of a TSV for Dr. Kaputa's shot data. Ball should be able to follow motion provided in the shot table. | 6 | 1.9 |
|
||||
| Verify that passing Unity a d(t) value will move the ball to the correct position. | 4 | 1.10 |
|
||||
| **No demonstration tasks for CDR. If recorded positions and calculated positions are visible on data display appropriately, Unity side is working.** | | 1.11 |
|
||||
|
||||
### Communication Layer
|
||||
|
||||
#### PDR
|
||||
|
||||
| Task | Est. hrs | Task Ref. ID |
|
||||
| -------------------------------------------------------------------------------------------------- | -------- | ------------ |
|
||||
| Prototype the transfer layer between Unity frame capture and the SoC. | 8 | 2.1 |
|
||||
| Prototype loading image data into the VDMA buffer for FPGA access. | 4 | 2.2 |
|
||||
| Prototype the REST API between the processor's calculated position data and the web visualization. | 8 | 2.3 |
|
||||
| **For PDR: Showcase some form of data transfer between Unity and the SoC** | | |
|
||||
| **For PDR: Showcase some form of data transfer between Unity and the SoC** | | 2.4 |
|
||||
|
||||
#### CDR
|
||||
|
||||
| Task | Est. hrs | Task Ref. ID |
|
||||
| ---------------------------------------------------------------------------------------------------- | -------- | ------------ |
|
||||
| Implement and Verify Unity receives d(t) from SoC after processing. | 5 | 2.5 |
|
||||
| Implement and Verify web server can access and read CSV file containing positions. | 5 | 2.6 |
|
||||
| Implement and Verify web server can send commands to Unity ('Next shot/volley') | 5 | 2.7 |
|
||||
| Parse csv file containing calculated volley/shot positions. | 5 | 2.8 |
|
||||
| **No demonstration tasks for CDR. If communication layer works appropriately, nothing to showcase.** | | |
|
||||
|
||||
### FPGA
|
||||
|
||||
#### PDR
|
||||
|
||||
| Task | Est. hrs | Task Ref. ID |
|
||||
| ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------- | ------------ |
|
||||
| Feed a saved image into the FPGA using VDMA buffer. | 4 | 3.1 |
|
||||
|
@ -30,12 +55,20 @@
|
|||
| Create VHDL IP for processing an image by XORing with a second frame. | 4 | 3.3 |
|
||||
| Record the delta(t) of each of the possible image processing paths:<br/>img -> rgb_to_grayscale -> XOR -> processed img<br/>img -> XOR -> processed img<br/> | 4 | 3.4 |
|
||||
| **Showcase delta(t) values for each process as part of the initial PDR requirement. Showcase the final centroid pixel (or closest value).** | | 3.5 |
|
||||
| | | |
|
||||
| | | |
|
||||
| | | |
|
||||
|
||||
#### CDR
|
||||
|
||||
| Task | Est. hrs | Task Ref. ID |
|
||||
| ---------------------------------------------------------------------------------------------------------------------------- | -------- | ------------ |
|
||||
| Create Simulink implementation of image XOR with first-frame reference image comparison. | 12 | 3.6 |
|
||||
| Load calculated centroid pixel values into memory for the SoC. | 2 | 3.7 |
|
||||
| Verify both top and side images are processed and always result in a centroid position. | 4 | 3.8 |
|
||||
| **No demonstration tasks for CDR. If Algorithm is able to correctly process centroid data from FPGA, FPGA side is working.** | | 3.9 |
|
||||
|
||||
### Algorithm
|
||||
|
||||
#### PDR
|
||||
|
||||
| Task | Est. hrs | Task Ref. ID |
|
||||
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------ |
|
||||
| Create test data that mimics what the FPGA will send out; i.e. X and Y positions across each of the two images, as well as diameter of the ball in pixels. Test data should be manually created with saved images from Unity team. | 2 | 4.1 |
|
||||
|
@ -43,8 +76,19 @@
|
|||
| From the left and right image positional data from the FPGA team, determine position of the tennis ball. Use the formulas from Lab2/3, and possibly using Lab4. | 2 | 4.3 |
|
||||
| **For PDR: Showcase the test calculation for generating X and Y positional data from the pixel values. Showcase the real calculation using positional output from the FPGA.** | | 4.4 |
|
||||
|
||||
#### CDR
|
||||
|
||||
| Task | Est. hrs | Task Ref. ID |
|
||||
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------ |
|
||||
| Develop algorithm for coefficient of restitution (take points across entire shot/volley, calculate maximum velocity after each bounce, divide velocity after bounce by before to determine restitution). Pass off to data visualization team for implementation on web server. | 2 | 4.5 |
|
||||
| Verify and optimize algorithm calculations for accuracy, pass off to data visualization team for implementation. *If web server is the implementation we choose to go for when calculating and displaying the calculated error, we will also need to add a communications layer task for passing in the 'real' Unity values of the shot* | 8 | 4.6 |
|
||||
| Verify and optimize physical point calculations from pixel data, implement point calculations in the SoC from the processed centroids from FPGA team. | 12 | 4.7 |
|
||||
| **No demonstration tasks for CDR. If the algorithm for point determination and percent error are accurate, we will be able to demonstrate 'instant replay' on data display.** | | 4.8 |
|
||||
|
||||
### Data Visualization
|
||||
|
||||
#### PDR
|
||||
|
||||
| Task | Est. hrs | Task Ref. ID |
|
||||
| ----------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------ |
|
||||
| Create test data for five samples -- each with an X, Y, and Z position. This can be done by running a t-value through the Unity team's test function. | 1 | 5.1 |
|
||||
|
@ -52,11 +96,32 @@
|
|||
| **For PDR: Showcase a graph of each sample's X,Y, and Z position on a 2.5D plot.** | | 5.3 |
|
||||
| | | |
|
||||
|
||||
#### CDR
|
||||
|
||||
| Task | Est. hrs | Task Ref. ID |
|
||||
| ------------------------------------------------------------------------------------------------------------------------------------------------------- | -------- | ------------ |
|
||||
| Implementation of 'Next shot/volley' button. | 6 | 5.4 |
|
||||
| Implementation of 'Coefficient of Restitution' graph and final value. | 4 | 5.5 |
|
||||
| Implementation of 'Shot/Volley in-bounds/out of bounds' determination. | 2.5 | 5.6 |
|
||||
| Implementation of 'Instant Replay' tracking of the tennis ball. | 10 | 5.7 |
|
||||
| **For CDR: Confirm data display properly shows 'instant replay', a coefficient of restitution graph, and determination of in-bounds or out-of-bounds.** | | |
|
||||
|
||||
### Business
|
||||
|
||||
#### PDR
|
||||
|
||||
| Task | Est. hrs | Task Ref. ID |
|
||||
| ---------------------------------------------------------------------------------------------------------------------- | -------- | ------------ |
|
||||
| Create Gantt chart to track critical path and additional slack times. | 3 | 6.1 |
|
||||
| Keep track of all hours and send weekly updates to all stakeholders. | 2 | 6.2 |
|
||||
| Create a presentation to highlight each of the completion for PDR in each of the work categories. | 5 | 6.3 |
|
||||
| **For PDR: Create a presentation to highlight each of the PDR requirements and how they were met from each category.** | | 6.4 |
|
||||
|
||||
#### CDR
|
||||
|
||||
| Task | Est. hrs | Task Ref. ID |
|
||||
| ------------------------------------------------------------------------------------------------- | -------- | ------------ |
|
||||
| Finalize all tasks for CDR; determine appropriate hours per task and seek review from Dr. Kaputa. | 1.5 | 6.5 |
|
||||
| Track weekly hours and calculate burn-rate for meeting CDR. | 5 | 6.6 |
|
||||
| Gather screenshots and screencaptures highlighting finalized elements of the project. | 3 | 6.7 |
|
||||
| **For CDR: Create CDR Slides, assemble all required deliverables to meet rubric.** | 8 | 6.8 |
|
||||
|
|
Binary file not shown.
BIN
WIP Tennis Ball Detection CDR.pdf
Normal file
BIN
WIP Tennis Ball Detection CDR.pdf
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Add table
Add a link
Reference in a new issue