140 likes | 269 Vues
Group 1. Final Project Demonstration 13 December 2002 Madhvi Jain Yasin Ozer Jon Shalvi Frank Patrum. The Virtual Classroom. Itinerary. Project Overview Jon Data Pipeline Jon Graphical User Interface Frank Documentation/Users Manual Frank/Yasin Signal Processing
E N D
Group 1 Final Project Demonstration 13 December 2002 Madhvi Jain Yasin Ozer Jon Shalvi Frank Patrum
Itinerary Project Overview Jon Data Pipeline Jon Graphical User Interface Frank Documentation/Users Manual Frank/Yasin Signal Processing Server side Madhvi Client side Madhvi/Yasin General Difficulties & Frank Implementation Problems
Project Overview • Basic Idea was to produce a virtual classroom with a server and client GUI • Functionality was to be primarily implemented on the client side • Server side was to collect video and “splice” video streams from two cameras into a single video stream for transmission • Client was to receive video and implement the various DSP functions
Data Pipeline • DirectX • Lots of support • Easily stream data • Hard to touch raw data • Dali • Can handle data directly • Relatively simple • www.cs.cornell.edu/dali
Graphical User Interface (GUI) • Server GUI dialog created • Client GUI basic dialog created with “child” windows created - Overhead window and Student window are activated but currently only working as Modal which means only focus on them while they are open and can’t have any other functionality • Some calls work for both Server and Client GUI • - File open works and calls MPEG or AVI files • Issues with using various Structures and Classes of windows. • - CIPAddressCtrl, Modeless “child” windows, Scrollbars
Documentation/Users Manual • Help files generated by VC++ • Initial file links created by VC++ • Help files (identical to users manual) added to the code base so help button works and actually calls the help files • Users Manual • Installation, Hardware Setup (configuration suggestions), Software Setup, Using the Software
Processing at Server side • Splicing of two video streams : • Absolute Difference works well with uniform illumination • Cross Correlation • Plan to use autocorrelation to find overlapping • area of two cameras • Assume that the two cameras will be properly • aligned and synchronized manually • Difficulties: • 1) need two cameras to capture a scene • 2) need to verify whether autocorrelation would work !!! • 3) need to synchronize audio along with video
Processing at Client side • Processing at client side involves pan, zoom and time reversal • Have developed a flowchart on how to implement “pan” • Will take the position of the scroll bar as an input, relate it to the • index of image array and display that part of the array • Difficulty: • need to know what type of input will be provided from GUI Other Difficulties • Difficulty in using add-in Visual Studio feature in MATLAB • which allows calling m-files directly from Visual C++
Basic DSP on Client: Jump Back and Scaling The time reversal function will allow the user to jump back in time at preset increments such as 10 seconds, 30 seconds and 1 minute. The zoom function will allow the user to zoom in on a selected area of the video by preset increments such as 2x. The pan function will allow the user to focus primarily on one section of the board, which will effectively select the zoom area.
General Difficulties/Implementation Problems • Primary cause for all of our issues was lack of experience • Chose a project that had a large amount of integration required from various APIs and libraries that weren’t “friendly” to each other • Entire team has minimal experience writing code and the class projects only partially translated to our design for the final project. • Design concept was simple but implementation difficult • Time schedule was not sufficient to permit expertise to be gained by our team members in each of the areas we had to implement. • Needed another couple of full weeks to be able to realistically pull the whole project together.