Requirements and Verification

Description

Requirements: Requirements provide a technical definition of what each and every block in your system block diagram must be able to do. Each module in your system's block diagram should be associated with a set of requirements. If all requirements have been met for every module, you should have a fully functioning project. A good set of requirements should meet the following criteria.

Verification: Verifications are a set of procedures that you will use to verify that a requirement has been met. Every requirement should have a verification procedure associated with it. Good verification procedures will meet the following criteria.

Remember, a good R&V table should function like a debugging checklist.

Points Summary: At the time of demo, 50 points will be defined by the R&V table for your project. It is up to you to define how important each requirement is and how many points it will be worth. If your project is not fully functioning at the time of demo, these points will define how you will earn partial credit. If you do not provide a points summary or define one poorly (e.g., by giving too many points to a trivial requirement) the course staff reserve the right to define the points for your requirements without your input. The point summary should be organized as a table separate from the R&V table where the points are distributed across each functional block in your block diagram. Meeting the requirements for that block will then represent earning those points. If desired, you may define how many points each individual requirement is worth but this is not required.

This point allocation should initially be proposed by the students themselves with TA approval and finally instructor approval at DR. This point allocation must be printed and brought to the demo at the end of the semester. Changes must be approved by the instructor. Here is an example.

Examples

You can view example R&V tables in the sample Design Review documents: Good Sample DR and a Poor Sample DR. It is also helpful to examine the points summary example and a good example R&V table as it was presented in a final report.

A note about formatting: Requirements and Verification are best organized into a table and organized by functional block. If each module of your project has several requirements, you may want to create an R&V table for each block separately. Each row of your R&V table should have one requirement (in one column) and the corresponding verification procedure (in another column).

Submission and Deadlines

Requirements and Verification will be included in your Project Proposal, Design Review Document and you will receive feedback and suggestions for improvement. Changes to your R&V table made after design review must be approved by your TA. Changes made after Mock Demo will not be approved with the exception of extreme circumstances.

Unapproved changes to the R&V table that are presented at the Final Demo may be penalized up to 50 points (the total associated with R&V).

3D Scanner

Peiyuan Liu, Jiayi Luo, Yifei Song, Chenchen Yu

Featured Project

# Team Members

Yifei Song (yifeis7)

Peiyuan Liu (peiyuan6)

Jiayi Luo (jiayi13)

Chenchen Yu (cy32)

# 3D Scanner

# Problem

Our problem is how to design an algorithm that uses a mobile phone to take multiple angle photos and generate 3D models from multiple 2D images taken at various positions. At the same time, we will design a mechanical rotating device that allows the mobile phone to rotate 360 degrees and move up and down on the bracket.

# Solution Overview

Our solution for reconstructing a 3D topology of an object is to build a mechanical rotating device and develop an image processing algorithm. The mechanical rotating device contains a reliable holder that can steadily hold a phone of a regular size, and an electrical motor, which is fixed in the center of the whole system and can rotate the holder 360 degrees at a constant angular velocity.

# Solution Components

## Image processing algorithms

- This algorithm should be capable of performing feature detection which is essential for image processing. It should be able to accurately identify and extract relevant features of an object from multiple 2D images, including edges, corners, and key points.

- This algorithm should be designed to minimize the memory requirement and energy consumption, because mobile phones have limited memory and battery.

## Mechanical rotating system

Phone holder that can adjust its size and orientation to hold a phone steadily

Base of the holder with wheels that allows the holder to move smoothly on a surface

Electrical motor for rotating the holder at a constant angular velocity

Central platform to place the object

The remote-control device can be used to control the position of the central platform. Different types of motors and mechanisms can be used for up and down, such as the stepper motors, servo motors, DC motors, and AC motors.

# Criterion for Success

- Accuracy: The app should be able to produce a 3D model that is as accurate as possible to the real object, with minimal distortion, errors or noise.

- Speed: The app should be able to capture and process the 3D data quickly, without requiring too much time or processing power from the user's device.

- Output quality: The app should be able to produce high-quality 3D models that can be easily exported and used in other software applications or workflows.

- Compatibility: Any regular phone can be placed and fixed on the phone holder with a certain angle and does not come loose

- Flexibility: The holder with a phone must be able to rotate 360 degrees smoothly without violent tremble at a constant angular velocity

# Distribution of Work

Yifei Song

Design a mobile app and deploy a modeling algorithm to it that enables image acquisition and 3D modeling output on mobile devices.

Peiyuan Liu:

Design an algorithm for modeling 3D models from multiple view 2D images.

Jiayi Luo:

Design the remote-control device. Using the electrical motors to control the central platform of the mechanical rotating system.

Chenchen Yu:

Design the mechanical part. Build, test and improve the mechanical rotating system to make sure the whole device works together.