May 20, 2004
A team of four ECE seniors took their classroom success on a driver identification assignment to the road, winning prizes from the Rochester Institute of Technology (RIT) and Ford Motor Company. Zack Edmondson, Jonathan Hsieh, Prasanna Malaiyandi, and Peter Zhang's "Real-Time Hardware Face-Recognition System for Automotive Entry" plan earned third place in two competitions: RIT's 4th Annual Student Design Contest and Carnegie Mellon's Spring 2004 Undergraduate Research Symposium, the "Meeting of the Minds," for the Ford Undergraduate Research Award.
Extending an assignment they completed for 18-545, Advanced Digital Design Project, taught by ECE Research Scientist JoAnn Paul, the undergraduates began in class with the raw materials to implement a face recognition system, core hardware including processors, memory, a field programmable gate array (FPGA), and design tools.
"Not only did this class have a diversified focus, but it also gave you freedom," reported Malaiyandi, explaining the instructions were to propose their own procedure and implement it from initial diagrams all the way to a functioning prototype. Spending extra time at the course's state-of-the-art 24 hour access lab brainstorming and experimenting, the pupils soon went beyond the scope of their original mission.
"The team exhibited exactly what you want to see in a project group—they wanted do more with their work than the strict requirements of the course, and so took they took it upon themselves to find a place to showcase the project and their talents—and won a prize for it," said Paul.
Earning $1000 at RIT, the ECE group competed against twenty student teams displaying senior level undergraduate design projects from 13 schools in the northeast and Canada. The criteria for the award included presentation, project demonstration, teamwork, quality of technical content, and creativity/innovation. The competition was hosted by RIT's student IEEE chapter and sponsored by Fairchild Semiconductor, RIT, and IEEE Region 1. Judges were chosen from IEEE Rochester's members, professors, and industrial affiliates.
To qualify for the $200 Ford Undergraduate Research Grant at the "Meeting of the Minds," the crew submitted a proposal and delivered a presentation and final report to Ford's Carnegie Mellon Campus Relations Team.
Instructed by Paul to assemble their structure around a face recognition algorithm, they applied research in digital systems, including system on a chip (SoC) design, hardware/software co-design, and simulations of resource usage through Globally Asynchronous Locally Synchronous (GALS) systems.
"Being able to build such a diverse system from the ground up makes you realize how much you've learned as an ECE undergraduate," Hsieh reflected. "My experience in 18-545 has changed the way I will participate in and manage projects. No single engineer can do everything, so a diverse team is the most effective."
Edmondson, the team leader, divided up the tasks: he completed Matrix Laboratory (MATLAB) simulations and operated a Quartus programming tool, Hsieh used the Modeling Environment for Software and Hardware (MESH) Application Programming Interface (API) modeled in C for software system integration and design exploration, Malaiyandi took charge of the Verilog simulations for the custom hardware, and Zhang integrated the physical peripherals (including a CMUCam) to capture the live images. Zhang also coordinated most of the contest preparations.
"We all learned a lot about how to make a group of people feel like a team. By allowing each member to focus on a personal strength, everyone felt like they were making a contribution," noted Edmondson.
Applying the MESH framework developed by Paul and ECE Professor Don Thomas, the students demonstrated several possible hardware solutions, saving time on manual design exploration with custom simulators. MESH draws on a layered approach to modeling; hardware and software tasks intuitively map to resources and threads in a simulation environment. Built-in and custom schedulers determine when and on what resource each thread is executed, decoupling the software algorithm from the underlying hardware implementation. Developing a model that was parameterized to allow rapid reconfiguration, the team tested distributing software tasks across processing elements, weighing factors such as expandability, flexibility, performance, and complexity. To determine the optimal software/hardware architecture, they had to evaluate each aspect of the scheme against their electrical and mechanical constraints. In the process, they partitioned an eigenimage-based face recognition algorithm into segments—those best suited for hardware-level optimization and parallelization and those better suited for software implementation.
"By the time they were done, they re-wrote the algorithm we initially gave them to be more robust under lighting conditions and extended the hardware so that their project was portable for the trip to RIT," Paul accounted.
To make the unit deployable for automotive entry, they added the CMUCam and a controller area network data communications bus (CANbus) to interface with a car's electronics, as pictured in the sample scenario on the right. A customized 16-bit Nios core allows the face-recognition algorithm parameters to be adaptable, communicating the result to a peripheral interface controller (PIC). After the PIC sends the CAN message relaying the recognition, a second PIC receives it and displays the result on a liquid crystal display (LCD). The final product is a tailor-made parallel hardware matrix-multiply unit that processes incoming images in real-time.
Edmondson graduated with his B.S. in ECE in May and works on control processes for robotic systems for Siemens AG. Hsieh, Malaiyandi, and Zhang will return to CMU in the fall to earn their master's degrees as part of the Integrated Master's/Bachelor's Program. This summer, Hsieh is a Research Assistant on campus, testing software with MESH for a General Motors prototype drive-by-wire vehicle for the General Motors Collaborative Research Lab at Carnegie Mellon. Malaiyandi is interning for Network Appliance's Data Protection Group in Sunnyvale, California, creating a tool to automate code testing. Zhang is honing the business motivation skills for information technology professionals that he sampled during 18-545; this break he is attending the Information Management Leadership Program at General Electric.
Influenced by his team's spirit, Zhang said: "You want to be with a group that loves their work and finishes ahead of schedule. You want your members to go into lab on their own because they want to test out a cool new concept."