AUTOMATIC MODULATION CLASSIFIER Overview: Cognitive radio (CR) is relatively a new technology which enables an efficient usage of radio frequency spectrum. Smart Radios equipped with CR technology utilizes empty spaces in both licensed and unlicensed spectrum, called white spaces, to deliver a ground breaking performance; unmatched by any other wireless technology. The basic idea is to monitor and detects empty spectrum holes, then utilize them until their rightful owner shows up again. Afterwards, CR will change frequency to another hole and possibly another set of modulation and coding. This procedure is most likely to occur frequently, which imposes a large feedback to the receiver for every time the modulation and/or the coding change. One proposed solution to this problem is the utilization of a type of DSP analysis called automatic modulation classification. These simple DSP calculations can determine the type of modulation very accurately using a set of simple features to differentiate between modulation schemes. However, most work in this area is military oriented; applied to HF channels, and cannot be applied directly to GHz range, additive white Gaussian Noise (AWGN) channels. Proposed project effort: The primary objective of this project is to develop and implement a real-time implementation of Automatic Modulation Classifier (AMC), which can work in AWGN and able to detect both single carrier and multi-carrier schemes in the 2.4 GHz range. The first step is survey literatures about this topic and find out if anyone have done any real-time implementation of AMC modules. Afterwards, design stage commences with clear definition of the problem and proposed solutions. Simulate algorithm using MATLAB© and identify elements which influence the performance. The third step would be implementation on hardware platform. FPGA boards would make a perfect candidate for the DSP calculations required by the AMC. AMCs are not computationally expensive and do not require large memory either. Therefore, a mid-range FPGA board will suffice. Also, a complete RF chain; antenna, RF filter, and mixer, working in the range of 2.4 GHz is needed for the implementation too. Finally, testing would require transmitter with multiple modulation and coding schemes and a relatively “quite” area in the 2.4 GHz band. INTERFERENCE CANCELLATION FOR CDMA SYSTEMS Overview: Today’s communication systems are overloaded by unprecedented demand on data and online services. Just few years ago, the market is fighting to achieve 1 Mbps threshold. Now, we’re talking about tens or ever hundreds of times improvements in data speeds. Mobile communication market was, and still is, racing to introduce more speed to users, who are relaying more and more on data speed hungry applications. One of the most recent and still widely deployed is Direct Sequence Code Division Multiple Access DS/CDMA systems, commercially known as third generation 3G systems. Even after the introduction of improved generations 3.5G, 3.7G and 3.85G, the main issue of CDMA is not fully resolved; that is Air Interference or soft interference. Due to the fact that practical CDMA systems utilize codes that aren’t fully orthogonal, interference between users occurs and in most cases limits the system performance. Many solutions were suggested in literature, one of which is Interference Cancellation structures. These structures can be made cheaply and are easy to install in currently deployed equipment. These modules can extend the life expectancy of current mobile systems and improve performance considerably. Proposed project effort: The primary objective of this project is to develop and implement a real-time implementation of Interference Cancellation (IC) structures, which can work in AWGN and able to decode users’ data more reliably than commonly used matched filter. The first step is survey literatures about this topic and find out if anyone have done any real-time implementation of IC structures. Afterwards, design stage commences with clear definition of the problem and proposed solutions. Simulate algorithm using MATLAB© and quantify possible benefits to utilizing such modules. The third step would be implementation on hardware platform. FPGA boards would make a perfect candidate. IC structures are usually computationally expensive and, therefore, a high-range FPGA board will be required. Even though the model is supposed to be working 5 GHz radio channel, a simple setup would suffice as a proof of concept. The simulated noise and interference can be added to the data inside a PC and then fed to the FPGA for decoding. Ahmad Almudarres EECS 452 Pre-Project Ideas I. Design Ideas A. E-move chair: Rather than trying to make deaf people hear music, with this design, one gets to actually experience it through vibrations, motion and tilting. The E-move allows utilization of different signal frequencies and assigns various actions to each band of frequency. In other words, is similar to regular massage chair, except that it uses music tracks to determine the location and strength of the vibration. It also has the ability to tilt depending on the frequency of the signal as well. The chair will be operated by a program that is written based on the principles of basic signal processing and from there, determines the limits of each frequency filter. a. There are two main actions the chair software will control. First of all, it will control vibrations depending on the frequency of the signal. Using high, low and mid band filters, the software will receive an input, which usually comes from any music player such as an I-pod through the auxiliary input, and will determine the necessary action accordingly. High and mid band frequencies will induce vibrations in the upper to mid back, while low frequency controls vibrations in lower back and thighs. Therefore, people are enabled to feel the emotion of each track "just by feeling it vibrate their back and legs". Furthermore, the back angle can also change according to the genre of the playing music. Both of these aspects are user programmable can be modified according to the user's preference. b. E-move chair design Vibration points Controlled back angle that changes according to played track Three fully controlled massage locations Allows reprogrammable software to change frequency band limit Auxiliary input to connect any media source Ahmad Almudarres EECS 452 Pre-Project Ideas II. Design Ideas B. Bluetooth Cochlear Implant (BCI): A cochlear implant, also called a bionic ear, is a surgically implanted device that gives a deaf person a limited sense of sound. Over the last decade scientist have been hard at work improving the capability of cochlear implants to perceive melodies and allow users to appreciate music. The Bluetooth compatible cochlear implant will take advantage of these scientific advances by allowing the deaf to connect directly to their phone, iPod, or any other Bluetooth compatible device to fully appreciate their music. a. The visible portion of the BCI, shown below, consists of a receiver, the removable Bluetooth device, and a removable battery casing all connected to the signal processor which sits around a user’s ear. Sound is picked up by a receiver on the back of the person’s head. It is then processed and transmitted via radio frequency to the implanted portion of the device. The removable battery allows the person to recharge one battery while using another. The main contribution that this design makes to previous cochlear implants is the removable Bluetooth device that attaches to the bottom. This device connects directly to the processor which combines the signals from the receiver and the Bluetooth device to allow the user to hear their surroundings as well as the music from their Bluetooth phone or IPod. Users can adjust the volume of the receiver to control how much sound from their surroundings overlays the music. b. BCI Design: Volume Receiver Bluetooth On /Off Switch Battery Casing Bluetooth Casing Genre Recognition Overview: It seems that everyone in today’s society have some type of music generating device such as an iPod or Zune. Today’s generation have the tendencies to listen to most, if not every, genre in the music world, from Hip hop and Rap to Hard Rock to Electronic music. In most of these devices, the user uses only one type of equalizing (EQ) genre. The proposed Device would analyze the music that is being listened to and change the EQ for optimum quality and enjoy ability for the user. For example if the person is enjoying the genre of Rap, than the device would change the EQ to Bass Booster or Hip Hop or even both depending on the best quality of the results. This device would increase the number of users and would certainly be helpful in the entertainment industry. Proposed Project Effort: This device would be using digital signal processing to define the frequency that is being used. For example if the user if listening to Rock, the device would need to measure the frequency, which tend to be high in Rock, and determine that it is a Rock song and change the EQ to the specific genre. After the device has recognized the frequency than it would need a filter to filter out the unnecessary frequency space and optimize the used frequency. Since the genre stated above tend to be in the high range than the filter would have a cutoff of the lower frequencies. This project would use low pass and high pass filters to filter out the unwanted frequencies. It will measure the frequencies by measuring the peeks of the signal and the constancy of the measurement in that range to determine which genre it is, and perform the necessary tasks. The problem with this project is that it can be consume power at a higher rate than the original devices. Video Sensor for Traffic Monitoring Overview Traffic is one of the most uncontrollable aspects of civilization; we have regulated speeds, lanes and many other rules of driving to make it safe yet efficient. In a growing technological environment, there are more and more people driving, making it very difficult to insure that traffic jams are minimal. Some traffic jams can come and go in a manner of seconds, while some jams can last up to hours. By effectively devising a way to reduce traffic jams we can insure that people are happy and willing to drive their vehicles without any madness. The device proposed here provide the means to control traffic jams by measuring the number of cars present in the intersection and changing the clock of the traffic lights to make it faster, to allow for faster movement and less jams. Proposed project effort: Initially we need to develop the ability to process the image from the traffic monitor to decide if there is a traffic jam. Another way we can use an average time slots where jams occur which typically occur early morning times and midafternoon’s times. We can program the time slots into the clock of the traffic light to make it faster during these times, but it is better and much more ensuring to use digital signal processing. We can design a filter that would only calculate the images of vehicles and not anything else. We can use digital image processing to calculate the rate of arriving cars to the intersection, and by concluding to how many cars would be counted as a traffic jam we can change the clock of the traffic light. The device would involve some type of image providing device (DCAM camera) and an image processor coding that would work with the images taken by the device. It can be processed by Matlab which supports standard data and image formats including JPEG. It would be installed under the traffic light, and the device should cost around 300‐400$. Arielle Baine visuaLIFEr: A Desktop Audio Visualizer Overview: In recent times, music has become not only an audible experience, but also a visual experience. The future of the music world is predicted to emerge beyond just these experiences. Music has the potential to become a demonstrative experience as well. Can you imagine an audio visualizer that sits on your desk? This concept would bring music to life. The issue with many common lackadaisical objects, such as lava lamps, is that they do not provide a demonstrative experience. In other words, they do not engage the individuals mind, body, and soul in totality. Proposed project effort: The physical representation would consist of lightweight and/or collapsible objects. The objects would be moved by a series of motors to visually represent the music. The music will be sent through line-audio input cable, so the FPGA can perform the analogto-digital conversion. Important components of music include bass, mid, treble, signal frequency, etc. Signal processing would be done using the C5510 DSK. Next, the frequency spectrum would be sampled and proportionated, so that it can be represented on the desktop audio visualizer as a digital signal. The FPGA would also perform a digital-to-analog conversion to output the music to the devices speakers. The output would need to be in real-time creating a possible challenge for high tempo songs. The motors would need to fast enough to eliminate delay or some other solution. An adaptation would be to allow the device to recognize any unrecorded and respond accordingly; however this could be too large of a project. Other digital signal processing concepts within the scope of this project include frequency modulated analog signal and digital filters Arielle Baine Caller ID using Voice Recognition Overview: With so many aggressive technologies and trends caller IDs can be very unreliable. One known trend is spoofing, which has caused the unreliability of caller IDs. Spoofing is the act of an individual or organization calling a recipient from a number that is not their own. Something as simple as the unreliability of a caller ID can take away an individual’s peace of mind and security. Since individuals can no longer rely on the trustworthiness of the caller, a voice recognition caller ID would bring the reliability of caller IDs back. Proposed project effort: The basis of this project would be to use 2 speech recognition computing techniques known as pattern recognition and acoustic phonetic systems. The speech would be recorded through a microphone to capture the speech signal. A high quality headset styled microphone would be must appropriate to use since ambient noise to be minimized (as opposed to using a desktop microphone). The most important digital signal processing concepts used to develop the caller ID are FFT, analog-to-digital conversion, sampling and reconstruction, and filtering. These concepts could be summed up into audio, sound processing, and control efforts. The concepts mentioned will help discover if a voice has detected as known or unknown. A flowchart would be developed to explain what to do in the two scenarios (known or unknown caller). The disadvantage of the caller ID is that first time caller’s would not have a voice in the repository until they called a second time. A way to improve the rate of first-time callers would be to create a network-based repository. This would allow for only one person “scope wide” to receive an unknown caller. Self-Diagnostic Tool for Musicians Overview: A number of tools currently exist to assist musicians with preparing pieces, or helping others. However, there is no piece of equipment yet widely available that compares multiple aspects of the performance of a piece against the sheet music. For example, it is possible to forget a sharp or flat, and therefore play an incorrect note repeatedly until someone else finally catches the error. Once the error is caught, it can be difficult to correct, since the wrong note has been played repeatedly. While clearly some aspects of music are not about simple deviations from the notes written on the page (e.g. tone, style, etc), many other aspects (rhythm, accuracy, tuning, and tempo) are. A device that could be programmed with the sheet music of a song and provide real-time feedback on a player’s accuracy would be useful for music students at a variety of levels. Beginning students would benefit from early error detection, and more advanced students could use it when practicing for sight reading exercises. It would also be possible for a player to record themselves playing, and then play the recording to receive feedback, which would allow him to find all the minor errors in a performance. In the long run, it might be possible to expand on this idea to compare an entire recording against a piece of sheet music and display on a computer or other device sheet music extracted from the recording and the original part, with differences highlighted. This would be useful to band directors, who could see which sections are struggling with which sections of music. Proposed Project Effort: First, it would be necessary to program an FPGA with a specific piece of music. This would mean storing the relative durations and frequencies of the expected sequence of notes. Next, DSP would be involved in finding a means of quickly detecting the frequency of a note played. The processor would then need to compare this frequency against the ideal frequency. For small deviations, no feedback would be given. A larger deviation would signal a warning about intonation. Finally, a significant enough deviation would generate a warning that the wrong note had been played. Ideally, the processor would also need to use DSP to find the length of the first note played. This would determine tempo, and therefore the desired lengths of the other notes. If this proved impractical, the tempo could be provided as an input using switches. Again, some small margin of error in note duration would be allowable, since in reality no musician plays all notes exactly perfectly. However, beyond this margin, a note held too long, or moved from too quickly, would trigger warnings. These warnings could be in form of different LED lights. Ideally, by the end of the term, the FPGA could compare live performance against a programmed ideal for one or two pieces. It would also be best to test this device with a few different instruments as well as with a recording to ensure that the frequency could be correctly determined even with different overtones and tone characteristics. For hardware, the FPGA board used in lab could be used since it already contains a microphone input, switches, and LEDs. Electronic Lead Overview: There are several existing “electric collar” designs, created to assist dog owners in training their pets. These collars, however, require human input to administer a warning or correction. As a result, they do not perform entirely the same function as a traditional lead, particularly if the owner is not continually paying attention to their dog. Specifically, with an electric collar, the dog can move an arbitrary distance away from the owner until the owner realizes that this is occurring. With a real lead, both the owner and dog obtain feedback when the dog attempts to move away from the owner by a greater distance than the lead length. It would be useful to dog owners, therefore, to create an electric lead that would have the same capabilities as an electric collar (the ability to administer or warning to the dog via human input) with the additional feature of automatically detecting the distance between the collar and the human’s controller device. This distance could be set by the owner. A warning (ideally auditory) would be issued to both dog and human when the distance neared the “lead length”. This warning would continue until the distance was reduced. Additionally, prior to walking the dog, the owner could select between an “automatic correction” and “manual correction” setting. The automatic correction setting would administer a correction to the dog in the form of a shock if it persisted in exceeding the desired distance from the owner. This setting would be ideal for keeping the dog within some rather large distance. In manual mode, the owner would have the option of administering a correction to the pet if the dog persisted in moving further away. This option would be more analogous to the use of a traditional leash. An additional useful feature would be a rapid change of the allowable distance, in the event that people or other dogs were approaching. Proposed Project Effort: RF signals could be used to determine the distance between the collar and the controller. The controller could emit an RF signal, which would then be received by the collar. The collar would then transmit a response signal. The delay between reception and response would be constant, and using this information, as well as the approximate speed of the RF waves, a distance could be computed. For purposes of this project, it would be best to limit the cases to the dog being within the owner’s line of sight. This should be adequate for most situations. Some sort of DSP based control algorithm would need to be used to check and compute distances, and transmit corrections and warnings. It would also need to take in any change in the desired distance and transmit a warning signal while slowly changing the desired distance down to the new level. Ideally, the speed of this change would be controlled by the initial distance between dog and handler. A difficult aspect of this project would be finding hardware. Specifically, some sort of controller would be needed with a means of inputting distances; for purposes of keeping it small, inexpensive, and portable, using “up” and “down” inputs to change a default distance might be better than a full number pad. It would also require a few other buttons for controlling the mode and sending corrections or warnings manually. It would also need an audio or haptic output to warn the owner if the dog was moving too far away. Additionally, a small, programmable receiving device, also capable of various outputs, would be needed for the collar. A good starting point for this project would be to look at the devices used for existing collars, and see if a similar device with the potential for more capabilities exists. Communicator for the Physically Disabled Overview There are many people all over the world whose disabilities keep them from communicating properly, despite the fact that they are extremely intelligent human beings who would like to share their thoughts and ideas with the world. They feel trapped in a body that is limiting to them. A communicator that was tailored to the needs of individuals, and easy to use, would help many people express themselves in valuable ways. The communicator would need a wide vocabulary, and an easily understandable organizational system for this vocabulary. Once ideas or sentences are formed, they could be outputted on either a display screen or through a speaker, or both, attached to the system. The communicator would perhaps be able to connect to the Internet, allowing users to easily Google something to further expand ways to communicate with the outside world. There are many possibilities and uses for a simple user-‐controlled communication system and there are many forms one could take, depending on the needs and capabilities of the user. Proposed Project Effort Physical disabilities vary extremely. Some people have more motor control than others. A MIDI controller with programmed words might be usable for some, whereas others have less motor control and would need a controller on a smaller scale. Using a small joystick with a few buttons would probably be more manageable for a lot of people because it’s portable, simple, and can be operated with small movements of one hand. These controllers would then be connected to a microprocessor to read the signals given by the controllers and translate the movements into the words and sentences that the user is trying to communicate. Some form of auto-‐complete to make sure sentences are grammatically correct might make the process easier and more understandable for both the user and those being communicated with. The system would then need to translate this sentence to an observable form, such as a display or through a speaker with an automated voice, or both depending on the needs of the user. A display might be a good way to “raise a hand” in class to not cause a distraction but also draw attention to the user, whereas the idea could be shared through the speaker for the professor and class to hear. Singing Tesla Coil Overview Generating electronic music has been gaining momentum in the world. We now have auto tuners, cell phone orchestras and applications like Garage Band to help us create music with out the use of instruments. In the exploration of electronic music, engineers have found that tesla coils are able to produce different frequencies and can thus be used as a complicated, but very cool, instrument. Despite the fact that it may not be extremely marketable, I feel it could bring at least the population of University of Michigan some joy. Once designed, many people would probably enjoy participating by coding songs to play. For examples, you can search ArcAttack, a robot band that utilizes a tesla coil. Proposed Project Effort The tesla coil itself would probably not be too hard to construct. However, they can need a lot of tweaking and we want the tesla coil to produce its electricity, pulsed at frequencies that can be heard as tones. To allow it to be programmed or controlled by a computer or MIDI controller like a keyboard would take more significant effort. One would need to connect the controller to a microcontroller in order to take the MIDI signals and turn them into a signal to send to the tesla coil to make it produce the correct frequency with the correct timing. This would take considerable DSP programming through the microprocessor. The Tesla coil would need to be turned on and off quickly and at different frequencies, as programmed by the microcontroller. The whole system would need a lot of tweaking to get right, but the end product would be magnificent. As a summary, we’d need to build a tesla coil with inductor and capacitor circuits and a toroid, and then we’d attach it to a microcontroller, which would need to be programmed to take instructions and turn them into signals to control the Tesla coil. That signal might need to be amplified. Once the system is all connected, it would take considerable testing to be able to actually create distinguishable tones through the tesla coil and even more to string them into the timed tones of a song. As a note, handling Tesla coils can be dangerous because of the high amounts of electricity that surrounds the system. Safety precautions would be necessary throughout the process. Pre-Project Ideas EECS452 Fall12 Project 1 Automatic Target-Tracing Laser Gun Overview: In modern society, automation becomes more and more important. Lots of target recognition or tracing technique greatly changed our life. For example, some laptops use fingerprint reader to improve the security; some smartphones even use facial recognition to unlock. Maybe in one day, just using one camera and one microphone, the system will point out the stuff we specified by speaking. The main idea of this project is image and signal processing and the way I want to demonstrate it is using a laser gun. Proposed Project Effort: First, a base should be built to load the laser gun, camera, microphone, DSP, FPGA and servo, etc. That’s should be pure mechanical and be done in the first week if possible. It would be preferred if the laser gun can turn in maybe 180 degree or more. The PWM signal used for servo control can be generated easily by FPGA. Next, it’s about target-tracing. To simplify the project, I would prefer to use maybe only two kinds of targets: A red circle and a green square. We can set two modes of the laser gun to show that we do can differentiate them. For instance, the laser gun will keep shooting the red circle and it will keep blinking if the target is a green square. Of course, there can be way more kinds of targets and behaviors of the laser gun. But the ultimate object of the project is to show that this system can differentiate various targets and keeps tracing them. The third part of this project should be voice recognition. For example, we can say “start” or “stop” to control the system. Surely, for security consideration, this system should only be controlled by who were saved in the system. But for general propose, this system should also be able to be configured to “listen” to everyone. However, I think this kind of voice recognition should be much harder since various people’s voice has not only different speed but also different frequency. Maybe reading some paper will help. Definitely, this part should be considered as the last part of this project. 1 Pre-Project Ideas EECS452 Fall12 Project 2 (Portable) Multi-Use Audio Effects Generator Overview: Nowadays, there are various kinds of music player such as old school CD players, iPods, and cell phones, etc. However, they usually have rotten effects generator and most of them do not have noise cancelling function. Using different sound effects in different scenarios can make music much more interesting while noise cancelling function is very useful and demanded in office, airplane, and any noisy places. The object of this project is to build a music box that can generate various sound effects, cancel noise and does not rely on the music player we use. The effects I mentioned here is not limited to what an equalizer can handle. It’s should also include effects such as scene effect or something else. Proposed Project Effort: First, the music box should contain: DSP and FPGA to do the signal processing; several tuners to set the sound effect or alternatively, we can use the LCD and buttons to select them; one or two microphone to receive the noise; one 3.5mm male to connect to the music player and one 3.5mm female to connect to output such as an earphone. Next, it’s about sound effect generation. I anticipate this part will be, somehow, straight-forward. It’s a pure signal processing on the input signal. In the first step, the music box should be able to enhance or reduce the sound of a various frequencies as an equalizer. Then, there should be several particular sound effects as selections for users to choose. Using the LCD is preferred. Alternatively, we can also use the tuners or switches for the purpose of demonstration. The third part of this project should be noise cancelling. I regard this as the hardest part of this project. The outside noise we received reaches as far as the whole frequency spectrum. Nevertheless, I wonder if it also related to the problem of phase. Even if we get the perfect signal of outside voice, how can we use it wisely to generate the cancelling signal and add them into the music? Clearly, my current knowledge is far not enough to solve these problems. As a result, I anticipate that reading will be the first priority during the whole project. 2 Designing a System that Distinguishes Music and Speech Overview: With the continuing advancement of hands-free technology the ability to control wireless gadgets such as floor-cleaning robots through speech is eminent. The idea is that a robot should be able to receive, process, and distinguish speech commands in the presence of common background noises that emanate throughout a home. The key for the robot to be able to process voice commands universally in a home is for it to distinguish between speech and music being played on the radio. Discriminating between speech and music is also important in enhancing Automatic Speech Recognition (ASR) systems because it is used to disable ASR when music and other related audio classes are present in automatic speech transcription. In addition, the ability to discriminate between speech and music can be applied to enhance bit-rate coding. Speech coders achieve better results for speech coding than music coders do, and music coders achieve better results for music coding than speech coders do, so the ability to discriminate between speech and music makes it possible to select the correct bit-rate coding. Proposed Project Effort: The goal of this project is to process pre-recorded sound samples that result from digitally combining speech and music, and extract the speech and music components separately. Once the two classes of sound, speech and music, have been separated they should be compared with the original speech and music components respectively to determine the quality of speech and music discrimination. In an effort to make this system superior and efficient, students should strive to improve the quality of speech and music discrimination by employing features unique to speech. Some features include the 4 Hz modulation energy characteristic of speech, percentage of low energy frames, spectral centroid for voiced and unvoiced speech, and the zero-crossing rate of speech. While a single feature should suffice in the discrimination process, employing multiple features will likely improve the quality of discrimination and, in turn, the quality of the system. A multidimensional MAP estimator can be used to classify the class of data that the audio signal belongs to (ie. speech or music and/or some other class entirely). Each class can be modeled as a Gaussian cluster of points in the feature space (the dimension of the space is equal to the number of features utilized). Some initial training data will be required to determine this cluster of points. Development should begin with the TI DSK and Spartan-3. Ideally, students should be able to demonstrate a complete working system contained in an FPGA. Likely peripherals include LEDs, speakers, audio amplifiers, and switches to toggle between settings. The scope of this project is open ended in the sense that it is the group’s call to decide how many features (to distinguish speech from music) are incorporated, and how many classes of sounds it wishes to incorporate in addition to speech and music. Designing an Encoder and Decoder to Perform Audio Steganography Overview: Steganography is the art of writing hidden messages in such a way that no one other than the sender and the intended recipient can suspect the existence of a message. While cryptography and encryption protect the contents of a message, when left in plain sight they may also arouse suspicion. Steganography, on the other hand, does not protect the contents of a message, but instead conceals the message itself in an unobvious way. When used in conjunction with cryptography, steganography will both protect the message contents and the parties involved in the message transmission. Digital steganography works by hiding one message or file inside another message or file, respectively. Various digital media can be used to hide messages or files, including sound, images, and video. When steganography is performed, the media within which the message is hidden is digitally altered in some way. The goal of steganography is to change the carrier ever so slightly with the actual message in such a way that when the stego-object is played back the difference is unnoticeable. As long as changes to the media on which steganography was performed remain indiscernible when compared to the carrier the hidden message is safe. Proposed Project Effort: The purpose of this project is to create an encoder and decoder to perform Audio Steganography (AS) on various types of speech samples. Various steganographic techniques should be explored and implemented including, but not limited to, LSB coding, phase coding, and spread spectrum. A user of this system should be able to input a speech sample, the message object, that he/she wants AS performed on. The encoder should perform AS on the input speech sample by using some of the aforementioned steganographic techniques to embed it within an existing sound sample, the carrier object (ie. classical music, simulated white noise within an airplane cabin, radio music, rap music, rock music, etc.), to produce a stego-object. The user should then be able to playback the carrier object’s sound and the stego-object’s sound to compare sound quality. As a final check, the system should demonstrate the ability to decode and extract the original speech sample, the message, from the stego-object. In addition, the team working on this project should perform various analyses on the carrier object and the stego-object to determine the quality of AS. Compare the transmission rate, robustness against removal techniques, which techniques minimize the probability an attacker can detect the hidden message, and produce an undetectable change in sound to the human ear. Different steganography techniques will work better depending on the message object and the carrier object characteristics. Various steganographic techniques exist for AS applications, and they all have unique tradeoffs. LSB coding is the most basic form of AS and should be explored just to understand what sort of noise and distortion are introduced to the audio sample when steganography is performed. Phase Coding works by encoding the message object in the phase components of the sound that are not perceptible to the human ear, and thus does not introduce noise when perceived by the human ear. The Spread Spectrum method works by spreading the message over the entire frequency spectrum of the carrier using a code independent of the actual signal, resulting in excessive bandwidth use compared to the original carrier. Development should begin with the TI DSK and Spartan-3. Ideally, students should be able to demonstrate a complete working system contained in an FPGA. Likely peripherals include LEDs, speakers, audio amplifiers, and switches to toggle between settings. Tarek El Shamy telshamy EECS 452 Pre-Project Ideas Project 1: Gesture Controlled Car Overview: Remote control cars being control by a directional pad have existed for years. People have even went on to create remote control cars that self navigate and controlled by voice. People seem to be trying to make the remote control driving experience as real as possible. So why not create a remote control car that navigates by hand gestures? It would respond to your hand movements and turn, accelerate and reverse based on your instructions. Proposed Project Idea: The project would use a camera that would detect the direction one’s hand is going. If the user’s hand moves up, the car would accelerate, if it moved down, the car would decelerate/brake. Likewise, if the user’s hand moves left or right, the car would move in the corresponding direction. The remote control car would have a wireless antenna communicating with the Altera DE2 board that would be connected to the camera and would process the direction and broadcast the correct movement/direction to the remote control car. Proposed Parts: - Wild Thumper 6WD Chassis – Black for $249.95 FreeM - Infrared Controller for $21.95 CMOS Camera - 1300x1040 for $9.95 Total Proposed Cost: $281.85 Project 2: Guiding Cane Overview: For years, blind people have had difficulty navigating the streets of cities and towns around the world. They have always been subject to house arrest as leaving their homes would normally mean endangering their lives and the risk simply wasn’t worth it. However, as the years passed, blind people became more and more inclined to visit the streets of their neighborhoods as they became equipped with canes and trained dogs to guide them through traffic. However, some are still too scared to leave their homes. What if we can offer them a solution to this problem? What if we can create a cane that navigates the streets of any city and warn them when they are about to cross a road with oncoming traffic. Or bump into a pedestrian? We can give them that. We can give them a cane that guides them through the street, a guiding cane. Tarek El Shamy telshamy Proposed Project Idea: The project would consist of a cane on wheels. The wheels would be connected to a camera that would detect the proximity of the cane to objects (non-infrared emitting) and people. It would ensure the user doesn’t bump into any person/object by providing force in the opposite direction via the wheels. This will drive the user away from bumping into objects while ensuring his/her safety. The cane would be connected at the base to a set of four wheels (like a remote controlled car) that are connected to a microprocessor (Altera DE2 or other) that communicates with the camera and the infrared proximity sensor detecting objects/people and ensuring the user doesn’t come in their way/bump into them. Proposed Parts: - Wild Thumper 6WD Chassis – Black for $249.95 CMOS Camera - 1300x1040 for $9.95 Infrared Proximity Sensor - Sharp GP2Y0A21YK for $13.95 Total Proposed Cost: $273.85 Daniel Friedman EECS 452 Pre-project Ideas Proposed Project 1: Noise Cancelling Headphones to allow Keywords Overview: Many people wear noise cancelling headphones on planes, while working at computers or even while running. This can be helpful for people trying to sleep on airplanes or concentrating on computers but at some points it can be dangerous and sometimes fatal. If someone is running along the street with headphones on and does not hear a car honking or a person yelling at them, or does not hear the instructions from the flight attendant, possibly hazardous outcomes can occur. The goal is to allow some keywords to be admitted through the cancellation filter. This would allow very specific keywords like “fire!” or “stop!” to be heard to protect the person wearing the headphones from harm. We could also allow the headphones to be customized so that each user can program in their name so that when people that know the user call the user’s name, their voice is heard. To narrow the scope of this project, we could only pass through spikes in the signal that are a certain value above the noise floor. This would ensure that sounds that are clearly addressed to the user pass through. This project looks to be possible since noise cancelling headphones can be bought for around $50. One problem is that people talk at different tones so the important step in deciphering the word would be significant. Then it would check the word versus a database of keywords to find a match. This device would then allow that keyword to be sent out of the headphones so that the user can heed the warning before it is too late. Proposed project effort: To understand the signals coming into the headphones from the outside, there needs to be some microphone or antenna to collect the signals. A test needs to be done to create a threshold of how strong a signal should be to categorize it as someone talking to the user. Then, to analyze the signals coming in there would need to be some interpretation of what words were spoken. To do this speech recognition, Hidden Markov models are used. These models can be used because a speech signal can be viewed as a piecewise stationary signal and in short time scales, speech can be approximated as a stationary process. This will give us the linguistic content of the speech signal. Once it is known what was said, the speech can be compared to a database of keywords to determine if it should be sent to the headphones. Speech synthesis, or computer generated speech can be sent to the headphones and the whole signal can be cancelled or the actual signal can be filtered out of the noise to be sent to the headphones. Computer generated speech can use the text-to-speech (TTS) system to convert language text into speech. The database can be edited by the user at any time with inputs from a computer interface. Anyone that uses noise cancelling headphones should use this device since it will protect them from harm by hearing warnings given to them by others. This could prevent many hazardous events from happening. Daniel Friedman EECS 452 Pre-project Ideas Proposed Project 2: White-Tipped Cane with Radar Sensor Overview: The visually impaired use a white-tipped cane to detect objects that are their the vicinity. What if the cane had a radar on the handle that could tell the person walking how close they are to an object? This could be helpful to visually impaired people trying to get around in their everyday lives. The goal of this project would be to let the person know how close they are to an object in two different ways. One way would be for the person to wear headphones to hear a beeping noise similar to a car pulling into a parking space or backing up. As you get closer to the object the beeps would sound more frequently until the person is at some distance when the noise becomes a solid tone. Another way to alert the user is to have the handle of the cane vibrate in pulses. The vibration pulse frequency increases until it is a constant vibration at a predetermined distance from the object. The radar implementation would not be a very expensive addition to a cane as antennas and appropriate vibration chips would not be costly. The device proposed here provides a way for visually impaired people to become more aware of their surroundings. Proposed project effort: A radar must be used to determine the distance from the handle of the cane to the interfering object. Using the Doppler Effect and the Doppler equation one can determine the change in phase after the wave bounces off the object and returns to the radar. Frequecy analysis can be done to determine the range to the object. This analysis can use phase differences and the time delays to compare all of the return signals to each other. Using this information, a threshold distance can be determined as to when a solid warning signal is sent to the user. The output of the system can either be audio or vibration. Either way, a certain distance can be converted to the warning level of the output signal. A tactile transducer can be used to convert the electrical signal to a vibration. A tactile transducer is a device in which low bas audio frequencies can be felt as well as heard similar to what a subwoofer does. The main processing of this project would be in the analysis of the signals from the radar. There is also some interfacing done between the DSP chips used and the warning devices. Any visually impaired person could use this device to help them acquire a better understanding of their surroundings. This could prevent many different accidents from occurring. Foteini Goudra – Proposed Projects Project 1: Speaker and command verification for file decryption Overview: Corporations encourage their employees to use tablets for their everyday work. Therefore, files with sensitive corporate information are stored on a tablet meant for professional use. The encryption of these files can fail for multiple reasons, such as a result of hacking efforts. During current times, when successfully securing personal information has become increasingly necessary, we will create a speaker recognition process for preventing unauthorized decryption of files that contain sensitive, private information. This project will offer an easy and worry-free solution to professionals and other individuals. Given that a file is already encrypted, the owner of the stored information will pronounce the phrase ‘Open Sesame’, which will act as a ‘key’ to enable the decryption of the file. After this action, an algorithm that provides the correct private key needed for the decryption will lead to complete accessibility of the data. This project will respond to the current need for increased security for private information and prevention of unauthorized access and publication. The audio signal will be collected through a microphone connected to the tablet. The verification of the command and the speaker’s identity will be performed in two separate parts. The audio signal will be collected, segmented and analyzed based on its short-term power spectrum (Melfrequency cepstrum). Further analysis of the segmented audio signal, based on the work of Hidden Markov Model (HMM), and comparison of its results to a database that contains this key command phrase will lead to a decision on whether the key command is pronounced accurately. Next, collecting the voiceprint of the individual and performing a spectrogram analysis will lead to the verification of the speaker’s identity. After the successful completion of both processes, an algorithm will share the key needed for the decryption. This algorithm will be controlled and will maintain its interface on the tablet of the team’s choice. Foteini Goudra – Proposed Projects Project 2: Car detection for safe biking Overview: In every college town, numerous students every day ride their bicycles among cars and trucks in order to get to class or meetings on time. Even though riding a bicycle is a very environmentally friendly choice, it can be dangerous if either the car driver or bicycle rider is not careful. Unlike cars, bicycles lack a rear-view mirror. Therefore, avoidance of an accident depends on the car driver’s actions. This project suggests a way that a bicycle driver can be alerted if a car is at a very close distance behind the bicycle. A camera will be set on the back of the bicycle and will locate the car. We will analyze the video we collect, determine the distance between the bicycle and the car and compare it to the value of the minimum distance that will ensure the bicycle rider’s safety. If the distance measured is shorter than the minimum distance, a ringing sound is emitted through a speaker/headphones so that the rider can be alerted and speed up. Since we will avoid the use of radar and provide a low-cost solution, this project’s final product will attract a broad spectrum of users. A camera will be used to collect video. The shots from the camera are stored and analyzed. After analyzing the image via stereoscopic analysis and detecting the car, we will determine the distance between the car and the bicycle. This stereoscopic analysis will be implemented through software that will recover the depth of the images. An algorithm will complete the comparison of the distance with the minimum distance and determine if it is accepted. If the measured distance is considered too short, then a single audio sound will be created to alert the bicycle rider through his headphones or speakers. Project Proposal 1 Overview: In modern warfare, countries increasingly rely on technology to do the fighting, removing the need for humans. This is especially noticeable with drones supporting ground troops. In combat there is a constant connection between the UAV in the air, the control station on the ground and the troops on site. This creates a triangular hierarchy that needs to be in constant connection. The idea is to develop reliable target recognition software using various image and video processing algorithms to alert troops on the ground for possible threats. 2 Proposed Project Effort: To simulate the UAV, the team would have to create an image sequence on which the image processing algorithms can perform their target recognition (frame by frame). This image sequence (representing live feed from the drone) is fed into an FPGA (representing the ground control station) where the target recognition is performed. Once the targets are recognized by the software, the results are transmitted to a display where user can track the locations of the recognized objects on a map for example. More features can be built in such as multiple object tracking for people and vehicles. For the target recognition alrogithm there are several different image processing techniques such as template matching or change detection. The image processing capabilities of the FPGA have to be explored and assess if it can perform the target recognition quickly enough to not fall behind the real-time feed of the drone. The size of the images has to be also taken into account, the bigger the picture, the longer the recognition will take. An alternative would be to use one computer with three stand-alone programs working simultaneously. This would be used by the armed forces for simulation purposes and later a working design can be implemented. 1 Project Proposal 1 Overview: Companies now use teleconference to conduct meetings with employees or clients oversees. If more than one person is assisting to this teleconference and one person is presenting, the people assisting using Skype or Google Hangouts for example should be able to follow the entire conversation. If the person leading the meeting is moving, there is a chance that he may go outside the field of view of the camera. A proposed solution would be to track the face or body of the presenter and have the camera adjust to the movement. 2 Proposed Project Effort: To implement this, the user places a seed on the person or object he wishes to follow. This could also be implemented for more than one person with some sort of priorities preset to decide who to follow (first, second, etc). When the followed person moves out of a predefined boundary, the camera would recenter itself on the person and continue tracking. A custom webcam is built to receive the signals to pivot on its axis. The user would also be able to use a manual mode where he can direct the camera from his mouse and/or keyboard. The initial design would work for lateral movement but vertical and depth (zoom in or out) could be built-in using the same idea. The camera would need to have a good zoom for this feature. The teams needs to develop a reliable object tracking algorithm that can correctly recognize faces (for the initial design). The team needs to figure out a low-cost way to build a camera that can also meet the design requirements. This camera would be used by people or companies that rely heavily on teleconferencing. Additionally entertainers wanting to broadcast their show could use the camera and software eliminating the need for a camera crew. 1 IMAGE ALIGNMENT AND STITCHING Overview Some of the widely used algorithms in computer vision are those for aligning and stitching images. The Image alignment algorithms can help detect various correspondences among a group of images overlapping to different extents. They find extensive use in applications like image stabilization (seen in almost every camcorder these days), summarization and creation of mosaics. The Image stitching process can take these various alignment estimates and brings them together to create a high resolution photo mosaics. We see its use all around us as software that comes bundled in the digital cameras allowing us to stitch multiple images into a wide angle panorama. Image stitching also finds use in most of the digital maps and satellite photos to help seamlessly combine multiple images. Proposed project effort The project proposal is to perform Image alignment and stitching of group of images that have been captured by a camera and to display the combined image on a display device. The project will involve an extensive study of current literature into the process of aligning and stitching images. For image alignment, we would first need to understand appropriate mathematical models relating pixel coordinates in one image to pixel coordinates in another, followed by determining alignment estimates in the group of input pictures. Once simple techniques have been identified, methods involving extracting distinctive features only to establish alignment can be used. Subsequently the project effort would be towards using algorithms to seamlessly blend overlapping images keeping blurring and any other artifacts to the minimum. The project clearly involves a significant amount of digital signal processing by being a paradigm for Image processing. The alignment procedure would involve correlation estimates of various kinds and even transforms to be used on the input images to establish similarity patterns. Stitching the images too would need use of standard image processing techniques to process blurring and distortions. The working system would involve a camera interfaced with an FPGA. The camera would take a group of pictures of any scene which would be transferred onto the FPGA for the processing. An FPGA would be more suited for this application involving images as it could better exploit the great degree of parallelism required for this application involving images. The memory capabilities available on the board would need to be used to the fullest to store the images. The image processing algorithms would be performed on the Images to generate a final mosaic which would then be displayed on a display device (monitor, screen) through possibly a VGA port on the FPGA board. VEHICLE SEGMENTATION AND TRACKING IN TRAFFIC VIDEO SURVEILLANCE Overview Traffic surveillance for vehicle count, speed and classification is ubiquitous for reasons including safety, security and congestion management. Intelligent traffic monitoring/surveillance systems based on computer vision techniques are becoming extremely common due to their current level of flexibility and ease of installation. The process of identifying and tracking a vehicle from the video is certainly a demanding task. Nonetheless its a very attractive solution which can avoid having to manually analyze hours worth of recorded video. Proposed project effort The project proposal is to implement vehicle segmentation and perform motion tracking on vehicles from a traffic video. There have been years of work done towards developing algorithms for vehicle segmentation and tracking. A detailed literature survey towards the methods would need to be done. Segmentation of vehicles involves challenges including low resolution of surveillance videos, occlusion of vehicles and quite obviously the motion of the vehicles. A choice of implementable yet robust methods would be need identified to segment vehicles from the background, requiring strong DSP techniques in the context of video processing. Tracking the vehicle once its been distinguished from the background would then need to be performed. Blob tracking, active contour tracking, Markov random field based tracking, feature tracking are broad categories of methods that can be thought of being used in this particular application scenario. Combining the segmentation process and tracking into one efficient process would be crucial to obtain a computationally efficient algorithm. The system when implemented should be composed of a high processing power DSP or an FPGA board suited for video based applications. There are databases of traffic videos available online including an extensive dataset by MIT. These videos would form the input videos to be analyzed. They would need to be communicated from a computer into either the DSP board of FPGA board. The algorithm should be able to segment and track the vehicles in the video and display the information on a monitor, indicating through identified vehicles with colors and their directions through vectors. This process of display would need the board to be interfaced with a monitor through a display port. Video processing would also need large amounts of memory associated with the board along with high processing capability, to be able to perform the tracking in real time. Project proposal EECS452 Winter12 Title of Project: Android-Based Oscilloscope Team members: 4-5 I. Introduction and overview of project Digital storage oscilloscopes are a familiar tool to many electrical engineers. Every electrical engineering student at the University of Michigan becomes familiar with this device in EECS 215. These devices are powerful, sophisticated, and very expensive. Agilent brand (the same used at the University of Michigan) oscilloscopes cost over $700 even for “budget” models, and the higher-end oscilloscopes cost several thousand dollars , all out of the price range for curious students and cost-conscious hobbyists. Smaller, less expensive oscilloscopes do exist, but they either feature a poor display , or require an display or computer with specialized software to display results . With tablet-based portable computing rapidly gaining marketshare and steam, the price of tablets have dropped considerably in the past year. Recently, Google and ASUS released the Nexus 7, a 7” Android-based tablet that features a high-resolution multitouch screen, quad-core processor including a high-performance mobile graphics chipset, and a battery that lends it a long usage time between recharges (9+ hours), all for $200. However, since Android runs on many devices, this project could be reconfigured for larger or smaller devices. The main challenge in this project would be twofold: creating a small, low-power (USB bus-powered, if possible) analog-to-digital converter (ADC) that would interpret input for the Android device, and creating an Android application that would display the data and take user input, and send commands to the ADC to reconfigure it if necessary. Optionally, a component can be created that will work with the ADC to process high-voltage signals without damaging the ADC. 1 Project proposal EECS452 Winter12 II. Description of project i. Project Goals The goal of this project is to build an inexpensive, portable, nearly “full-featured” oscilloscope that would be used by students and engineers using inexpensive, preferably “offthe”shelf” hardware. To accomplish this, an Android tablet would be used as the system base, since high-quality Android-based tablets are both prevalent and relatively inexpensive ($200 for a 7” tablet sold by Google). Also, the API for the Android operating system is available for free, reducing both initial and continuing development costs. In the real world, the tablet devices may already be available to the potential consumer. Since most tablets do not have suitable inputs (either 1/8” audio inputs or BNC inputs) for reading signals from their sources, an interface utilizing an analog-to-digital converter will translate analog signals into digital data that will be transferred via USB to the Android device. An optional component would be a voltage divider connected to the ADC to cut high-voltage signals down to a level safe for the ADC, while sending a digital flag to the ADC so that the ADC reports to the Android tablet the voltages reported are in a different range. This system would also have several advantages over traditional oscilloscope systems, including: - Ability to take a snapshot of the current waveform (not available in low-end portable systems or high-end systems without an external system link) - Software-defined controls can be modified in minutes or hours, versus weeks/months for a hardware device that must be re-manufactured - Pre-defined waveforms can be saved / loaded onto the device's copious storage space (8GB) 2 Project proposal ii. EECS452 Winter12 Describe the system architecture, including a detailed block diagram (not drawn by hand) of the system including DSP, FPGA and peripherals, if applicable. Give an explanation of how the architecture will work – what the function of each of the devices will be and how they will be interfaced. 3 Project proposal iii. EECS452 Winter12 Predict what might go wrong and your contingency plan if it does go wrong. If the tablet is defective on arrival or breaks during the process, it would set back at least half the work. While the Android SDK does include a device emulator that would allow some development to continue, parts of the project, such as the tablet – ADC link and measuring the performance of the actual device would be delayed. If this ends up happening, development of the Android application would have to continue using the device emulator, with as much non-link functionality as possible implemented while we wait for replacement parts. iv. Provide a preliminary parts list for your project (including devices in the lab and those that must be purchased – give parts numbers and links to web if you have them). Google Nexus 7 - $200 - http://www.google.com/nexus/#/7 USB/MicroUSB Cable - <$5 http://www.monoprice.com/products/product.asp? c_id=103&cp_id=10303&cs_id=1030307&p_id=8641&seq =1&format=2 ADC (USBSTK5515?) - $80 Misc. Parts for voltage divider - $20 Voltage Divider IC - $2 Wiring - $7 BNC / Audio Jacks - $10 Switch - $1 4 Project proposal EECS452 Winter12 III.Milestones a. Milestone 1: ◦ Android application can display simulated input and do some oscilloscope functions ◦ ADC can convert analog signals into a digital format. ◦ (Optional) Voltage stepper can step voltages down b. Milestone 2: ◦ Android application can do most, if not all desired oscilloscope functions, and can recognize ADC ◦ ADC can be seen by Android device and (optional) has voltage stepper installed c. Identify the one thing that scares you the most that could cause you not to achieve Milestone 1? How about Milestone 2? The biggest concern I have is that there might be few, if any people who are familiar enough with Java / Android to be able to successfully develop the application. This might prevent achieving both Milestone 1 and Milestone 2. The ADC shouldn't be too much of a concern, unless it ends up being difficult for the device to communicate with the Android device, which might be troublesome for Milestone 2. IV. Contributions of each member of team The 4 or 5 members of the group would be split into two or three groups, depending on scope. Two members would work on the Android side of things, creating the application and making sure the performance is good, and providing the capability to look for the 5 Project proposal EECS452 Winter12 ADC. Two members would work on the ADC, making it visible to the Android device and running at as high a sample rate as possible. The last (optional) group member would be responsible for building a small hardware device attached to the ADC to step the voltage down to a safe level and communicate this with the ADC. V. References and citations  http://www.home.agilent.com/agilent/product.jspx?nid=536902447.0.00&cc=US&lc=eng&pageMode=SC  https://www.sparkfun.com/products/9484?  http://www.parallax.com/tabid/768/ProductID/46/Default.aspx 6 Project proposal EECS452 Winter12 Title of Project: Low-Cost Musical Vocoder and Autotuner Team members: 4-5 I. Introduction and overview of project Many of the most iconic effects in modern music come from one of two places – a musical vocoder, or an autotuner. Vocoders have been around since the 1930s, originally designed to help compress the sounds of the human voice in order to facilitate transfer over telegraph wires . The vocoder was then discovered to produce certain desirable effects for music and films . Digital vocoders have been around for many years, but keyboards with built-in vocoders are still relatively pricey. Using an inexpensive MIDI keyboard and a DSP chip with embedded software, it should be possible to produce the same effect. Voice autotuning should be possible with the exact same hardware needed for the vocoder, only with a different set of processing for the effect. Voice autotuning is used in many ways, from slight adjustments to perfectly tune a pop singer's voice, to providing a vaguely electronic singing voice to those who aren't actually singing or singing very poorly (See also: Kanye West). 1 Project proposal EECS452 Winter12 II. Description of project i. Project Goals The goal of this project is to build an inexpensive musical vocoder and autotuner using a DSP board, an input device to control pitch (small MIDI keyboard), and a microphone. The DSP chip will use the MIDI input / output on the keyboard to read the desired pitch, perform either the vocode or the autotune operations on the input voice, and then output the waveform. Optionally, the system can also take into account the detuning knob featured on the keyboard to produce effects that fall between keyboard pitches. ii. 2 Project proposal iii. EECS452 Winter12 Predict what might go wrong and your contingency plan if it does go wrong. The main thing I'm worried about is running out of processing overhead with the selected DSP chipset for the autotuning portion. Autotuning is often done after-the-fact on a high-performance system that does not process data in real-time, however I do know that real-time autotuners exist. iv. Provide a preliminary parts list for your project (including devices in the lab and those that must be purchased – give parts numbers and links to web if you have them). Rock Band MIDI Keyboard - $30 http://www.amazon.com/Rock-Band-Wireless-Keyboard-WiiNintendo/dp/B003RS19XE/ ADC (USBSTK5515?) - $80 Microphone - $10-$50 - Depends on whether we want a low-cost, “cheap” microphone, or a slightly higher quality one 3 Project proposal EECS452 Winter12 III.Milestones a. Milestone 1: ◦ DSP chip can do a single-frequency vocode ◦ DSP chip can recognize desired pitch via MIDI input b. Milestone 2: ◦ DSP chip can vocode over full keyboard range ◦ DSP chip can autotune to a single constant frequency c. Identify the one thing that scares you the most that could cause you not to achieve Milestone 1? How about Milestone 2? For milestone 1, I'm worried that the MIDI input will take a lot more work than I'm imagining, but that shouldn't affect the rest of the team's work, since they can put a serial debug interface in that will let them control the vocode frequency from a computer. For Milestone 2, I'm worried that the autotuning is going to be tougher to implement than I think. IV. Contributions of each member of team The 4 or 5 members of the group would be split into two groups. Two members would work on the vocode and autotune algorithms to be implemented in the DSP chip. The other group would work on interfacing the MIDI keyboard with the DSP chip. If the MIDI group finishes this task, they can then implement the detuning knob. V. References and citations  http://www.wolton.net/info/index.html  http://www.wendycarlos.com/vocoders.html 4 Khoo Wei Xiang EECS 452: Pre-project ideas 1. Gunshot detection system in an urban environment 1.1 Overview: Currently, response teams are dispatched to the scene only when the dispatch centers receive urban gunfire reports via 911 calls. A couple of issues is that there may be some lag time between the first gunshot being fired and the emergency calls being made or that callers may provide inaccurate information due to panic or fear. These factors result in a delayed response time as well as difficulty in pinpointing an accurate location of the shooter. A gunfire detection and information relay system, one of the Harris project concepts, detects a gunshot upon fire, pinpoint the location of the shooter and relay this information to response units and a central command center. This will reduce casualty rate and improve the safety of the law enforcement officers. Multiple microphones can be planted in a distributed array system to listen for acoustic phenomena that is characteristic of a gunshot. The sounds attributed to a gunshot are the impulse sound wave generated by a muzzle blast and the shockwave that occurs when the bullet travels through the air at supersonic speeds. Using this information, the system will be able to pick out a gunshot from the background noise found in an urban environment and trace the bullet back to its origin. The proposed system will also have to be able to differentiate and ignore false alarm sounds such as firecracker explosion or vehicles backfiring. 1.2 Proposed project effort: Gunshot detection can be done by using the microphones to detect sounds above a certain sound pressure level (SPL) threshold. The noise generated by an urban environment has a SPL of 90dB while the impulse sound wave from a gunshot has a SPL of 120dB to 160dB. This difference should allow the system to pick up the sound of a gun being fired. As the bullet travels through the air, the different times at which the shockwave arrives at each microphone can be recorded. Based on the difference in arrival times, the phase difference calculated from each microphone can be used to calculate the angle at which the bullet arrives. Using the time difference between the muzzle blast and the shockwave as well as the speed of sound, the distance of the discharge from the microphone can be calculated. By collating the results from the entire array system, analysis tools can triangulate the location of the shooter. This information can be conveyed to dispatch centers and response teams using common data networking methods such as WiFi. By making reasonable assumptions about the caliber and model of possible guns used in an urban environment, a library of acoustic signature of different guns can be stored in memory. Comparisons of the frequency spectrum and envelope of the sound with the values stored in the library will allow the system to differentiate between gunshots and other similar sounds. This system can be used by law enforcement agencies for wide-area protection and quicker emergency response time. Khoo Wei Xiang 2. Ground vehicle identification system 2.1 Overview: To better differentiate their vehicles and reinforce positive brand images, car manufacturers are using carefully calibrated engine induction systems and exhaust systems to give their cars a unique acoustic signature. This means that the brand and model of a car can be identified from its acoustic signatures. The proposed system will be able to pick out the acoustic signature of a vehicle from the background noise. Based on the characteristics of the sound, the system could identify the make and model of the vehicle. One application of this system would be to use it on automated garage doors. When a car is approaching the garage, the system will identify the car and check it against a list of pre-approved cars. If approved, the door of the garage will automatically open to allow the car to pass through. This system can also be adopted for military use to identify friendly or hostile vehicles. 2.2 Proposed project effort: An acoustic sensor with a frequency range of 2.6-20000Hz can be used to sense the approach of a vehicle. The sensor will record the sounds and filter out the noise using a filter in order to achieve a high signal to noise ratio. This can be done by recognizing that most acoustic signatures of vehicles contain sets of quasi-periodic signal components due to the pistons in the engine and the sound produced by exhaust system. By identifying these harmonic peaks, the acoustic signature of the vehicle can be filtered out from the background noise. After the acoustic signature has been filtered out, the information will be sent to the processor for identification. Characteristics of the signature such as the frequency spectrum, tonal content and the temporal characteristics (e.g. frequency vs time) can be analyzed and compared against a library of known acoustic signatures. This will allow the system to narrow down the model of the vehicle. Another possible method would be to use a sensitive acoustic sensor to pick up the infrasonic signatures produced by the vehicles. These infrasonic signatures are in the range of 0 to 20Hz and are produced in the wake of the vehicles. As the magnitude and frequency of these infrasonic sounds increase as the size of the vehicle increases, they can be used to identify heavy vehicles such as tanks and trucks. One possible problem is the differentiation between the sound signatures of a vehicle trying to enter the garage versus the acoustic signature of a vehicle of the same model that is only passing by. This can be circumvented by investigating the effects of different piston speeds in the engine on the acoustic signature of the car. This will allow the system to differentiate between a car that is slowing down to enter the garage and a car that is passing by at high speeds. 1.0) Project Proposals 1.1) The Auto-Fireman 1.1.1) Overview: When a fire is ablaze, time and man power are of the upmost importance. Firemen are dispatched to assess the integrity of the structure in on fire, to search the house for trapped people, and to deploy and operate the fire hose to extinguish the fire. Each house fire costs the city about 2500$ and business fires cost great deal more. To operate a fire hose requires two or three firemen. The purposed product will eliminate the need for these firemen and free them to aid in the other tasks that need to be taken care of. This will decrease the cost of fighting a fire and increase efficiency. 1.1.2) Product Description The auto fireman is essentially a fire hose on a turn table with vertical angle adjuster such that the hose can aim in any direction in a hemisphere. Mounted with a thermal camera and a normal video camera and a Distance sensor, the thermal data can be processed to identify the hottest region the ideal place to deliver the water. The normal camera data can be processed to identify any obstacles in the way. Combined with the distance data from the distance sensor the angle and water pressure desired can be calculated to deliver the water to the optimal point. The final product would be able to be deployed in less than 1 minute. Just hook up the water supply to the hose and place the auto fireman in the area around the fire. 1.1.3) DSP algorithm (target Identification) The challenges in designing the product lie in the DSP algorithms that would need to be developed in order to identify the target. The product requires that an obstacle be identified and circumvented. This means that extensive use of edge detection algorithms will need to be used, such as the corner edge detection algorithm. Once the boundary of an object is defined, the distance sensor could be used to determine whether the object is an object or a hole. This will form a map that can be compared to the thermal camera output to identify where the AutoFireman can shoot. 1.2) Yard-Protector 4000 1.2.1) Overview: Ever lean out the window of house and notice a squirrel eating your flower? Ever get annoyed at the neighbor’s dog pooping in your yard. Well no more. The Yard-Protector 4000 can keep unwanted rodents out of the yard. 1.2.2) Product Description The Yard protector 4000 has a turret base that can rotate 360 degrees and change angle from 0 to 90 degrees from the horizontal. It uses a thermal imaging camera to identify moving targets within a within a user specified distance and will fire bb’s at that target. The Yard-Protector 4000 will be programmable to identify specific targets to shoot and a list of targets to let past. For example you can program it let kids and birds stay in the yard unharmed but not squirrels and gophers. 1.1.4) DSP algorithm (target Identification) The system will use a thermal imaging camera to identify targets within the yard boundary and will compare them to a database holding information on size and body temperatures. This will allow the unit to identify and human child as an invalid target but a squirrel or gopher as a valid one. The system could use an audio pickup and filters to identify the target as well in the event that thermal matching is not cost effective or too resource heavy. The distance sensor will allow for the unit to calculate the proper angle to fire at and the temperature sensor the proper direction. The BB firing system will use compressed air and will include a compressor for when the tank is empty. Eric Lin EECS 452 PPI Solar Powered RF Based Bike Stand Overview: Through our daily routine we already have plenty to keep track of and a bike key would just be a nuisance we can all do without. Imagine you had just woke up and are running late for class and you just run out the door and get on your bike. But it isn’t only until later you realize you left either the lock or the key at home in your haste. Do you risk leaving your bike unlocked and hope no one steals it? To counter that situation I propose a small locking mechanism that is portable and can be easily installed on fixtures like already existing bike posts. The purpose would be to save valuable time otherwise fumbling around getting the bike lock and key when you’re in a hurry. Each group of bike stand would have a small central unit that would keep track of lock availability based on RFID technology. A user would only have to approach one of the stand, open the app that networks with the central unit, registering each locking mechanism to a specific user. Proposed project effort: This project would be fairly low cost and could achieve in several ways. But they would all involve some sort of wireless communication between the central unit and each individual locking mechanism. Using something like an XBee module, the central unit would take an input signal either generated through a mobile app or a physical interface and search through its internal memory searching for available stands. After finding an availability, the unit would then assign a randomized password for the user that correspond to a particular stand so all they have to do enter their password into the app or physical interface. For added security, the locking mechanism and central unit itself could have a codec so only particular signal would trigger each lock preventing accidental locking/unlocking. Eric Lin EECS 452 PPI Sensory Resonant Actuator Overview: There are numerous instances where noise cancelling is useful but what if there is a vibration cancelling instead of cancellation of sound waves. Mechanical structure that fatigues due to long term vibration would no longer a problem. In our everyday life there are noises everywhere, it could be as simple as having a noisy neighbor to as complex as causing damage to the road through intermittent and various vibrations created by variety of cars traveling. But given our project timeline a large scale project such as developing an actuator that counteracts traffic vibration would be near impossible. So I propose a miniature version of this sensory actuator. Proposed project effort: The sensory resonant actuator would have a few major components to it. The sensor would be one, and it would need to be sensitive enough to gather the frequency and magnitude of a vibration and feed it through a filter. This filter would allow us to differentiate between a loud heavy bass and a cat walking around. After determining the property of the targeted vibration, we could use a FPGA to control a vibration motor to create the counter vibration needed to cancel each other out. The motor itself would be fairly complex and expensive depending on the part chosen. Some of the motor I had in mind would be ones from precision microdrives as they have a large selection. But parts aside, this would most likely require a lot of fine-tuning on the filter and the control of the feedback vibration. 1.1 Guitar as a MIDI controller using DSP 1.1.1 Overview: The Musical Instrument Digital Interface (MIDI) protocol is a digital signal used to give digital instruments a tangible interface. MIDI instruments are used through the use of a MIDI controller which sends data about the digital instrument like amplitude and equalizer qualities to the digital instrument. In most instances, MIDI controllers use an interface that replicate a piano or a drum pad. This greatly limits the audience for which such products are developed. The goal of this project is to explore other applications for the MIDI protocol in an effort to expand the use of digital instruments. While the idea of a guitar MIDI controller is not completely novel (see Guitar Hero), improvements to their functionality would help performers expand their tonal options. Ideally this project could stand alone without any major modifications to the guitar that’s being used as your controller. This would give it much greater commercial application. 1.1.2 Proposed project effort: The end product of this project would be a stand-alone device that could use a ¼” audio input from the guitar to properly process the incoming signal and correctly identify the note being played based on its frequency and wavelength. This device could then send a MIDI signal to an external computer hosting a digital audio workstation (DAW) such as Ableton where the digital instrument resides. Then based on the parameters set in the DAW, the digital instrument would send the new information to a soundcard where the signal would be produced and sent to a speaker via an RCA cable for listening. The digital instrument need not be incredibly robust as that strays away from the intent of the project. This project is definitely a high-risk, high-reward project. The greatest challenge will be to get the various components of the system to communicate with each other at a low enough latency for the MIDI controller to be effective. The C5515 eZDSP Stick used in the EECS 452 lab combined with C/C++ code could be used as the system which identifies the note being plucked on the guitar. This information would then need to be sent via MIDI to another computer hosting the DAW which would produce the audio signal necessary and send it to a speaker for listening. A guitar would obviously be needed as well, but its only real requirement is that it has functioning electromagnetic pickups and a proper ¼” output jack. That, and properly tuned strings. Ideally this could be provided by a student for demonstration, but it simply acts as our signal generator and isn’t so much a part of the actual DSP system. 2.1 DJ Surface Control 2.1.1 Overview: When your finger is dragged over a surface of a texture material, it produces a high-frequency sound. Though it can be heard by the naked ear, the sound propagates best through dense materials. When dragging your finger to make a multi-part gesture, such as a letter, your finger moves, accelerates, and decelerates in a unique fashion. This produces a unique profile of frequency and amplitude. Particular data points about the gesture such a peak count and duration can be extracted by means of signal processing. This can lead to particular gestures to be classified using some machine-learning technique such as a decision tree. These unique properties can be taken advantage of to create unpowered input surfaces. These input surfaces can be detected by the means of some microphone coupled with a low-pass filter to eliminate noise. 2.1.2 Proposed project effort The idea for this project is to create a virtual DJ application that can be controlled by detecting the unique profile of particular gestures on any surface to execute basic commands such as start, stop, fast-forward, and rewind. Given two surfaces and two microphones, the user would be able to manipulate two separate mp3’s on a computer similar to how a DJ would. The user would then be able to play two tracks simultaneously in a way that is pleasing to the audience, which is known as “beat-matching”. Through research of projects exploiting these same properties it appears that the best tool to sense the high-frequency noise produced by your finger would be a digital stethoscope. Many models of digital stethoscopes are made with audio outputs. The company “Thinklabs” makes a model that costs just under $100. However, all of the functions performed on a computer (signal processing from both inputs as well as mp3 manipulation) would be very resource intensive and make take quite a bit of both processing power and RAM. Additionally, to get all of the aforementioned computer processes to function with little enough latency as to make the product functional for the user may present some issues. The majority of the effort for this project would manifest itself in building and detecting profiles for unique gestures that are performed on the surfaces. The actual logic to pair the unique input profiles with commands should be very straightforward. Additionally, finding existing music playback software that can be controlled from such our user input may be difficult. It may be necessary to build a new application, however it appears that the open-source music application “foobar2000” may be robust enough to perform the necessary operations based on our user’s input. Aspect Ratio & Crop Video Correction Kevin Nasto September 13, 2012 1 Problem Sometimes when watching playing a video (could be a video file, streaming, DVD, etc.) on a televion or other display, the aspect ratio is incorrect and the video is not properly cropped to fit the screen. This is usually do an improper conversion and/or transfer. One example of this is older DVD films designed for 4:3 televisions where the black bars are encoded in the video. Another example is YouTube videos that are not converted properly and the aspect ratio is incorrect. The tradditional way to fix this is, for example, to have the software do it in the Youtube case (download the video, change aspect ratio in player) or in the DVD case, or change settings to crop in the DVD player. What if a television did it automatically? 2 DSP Solution 1. Detect if the image doesn’t fit in the screen and detect if image is stretched. 2. Apply a proper translation and transformation to fix the image. 1 One way the detection may work for the image stretch is to find a signature in the image that corresponds to a set of defined common aspect ratio problems. For example, trying to fit a 16:9 image into a 4:3 image or vice versa. Then after the detection, a transformation can be applied to fix the aspect ratio. The cropping can be done by detecting the edges of the wanted image and scaling to the edge of the display. Afterwards, the corrected video/image will be displayed on a small OLED screen. 2 Mike Nowak EECS 452 Pre-Project Ideas I. Musical Instrument Frequency shifter Overview The proposed project would sample sound from a musical instrument, shift its frequency, and then play the sound back in real time to the musician. This would effectively augment the instrument with a different tone than what would normally be played. Such a device could be a useful creative tool for musicians that would add to the options available to them already for creating music. In addition to frequency shifting, other effects could be added to the sound processor, such as simple high and low pass filtering, compression, reverberation, and echo. Proposed Project Effort This project would need to sample an audio signal in some way, either directly from an instrument with an electrical output, or via a microphone directed toward an instrument. In order to shift the frequency of the sampled signal, a Discrete Fourier Transform (DFT) of the sound would need to be performed, and frequency magnitudes moved around in the frequency domain. To obtain the final desired signal, a simple inverse DFT would have to be done. The resultant signal could then be processed further to add other effects, and finally be output through a digital to analog convertor and played as sound through speakers. The primary hardware necessary for such a device would be a digital signal processor (DSP) such as the C5515 eZDSP stick. In addition to this, a microphone and connectors to interface it to the C5515 would be needed. For simple input to the device, a small board consisting of a few push buttons would need to be fabricated, or a prefabricated board found. Due to the simple nature and construction of the device, it could probably be fabricated cheaply and made to cost under $100, making it readily available to amateur and professional musicians alike. Mike Nowak EECS 452 Pre-Project Ideas II. Ultrasonic Motion Sensor Overview This project would aim to use a handheld ultrasonic sound emitter to detect the hand movements of a user and use them as control input for a device. The motion and position of the sound emitter (and thus the user’s hand) would be determined through the use of the Doppler Effect, in combination with the phase differences seen in a stereo feed of the detected sound. Such information could then be used to control a simple application, or even fed into another device or PC as input. Proposed Project Effort First and foremost, a handheld ultrasonic sound emitter would need to be developed for this project. In addition to this, two microphones or transducers capable of detecting the ultrasonic frequency emitted would also be required. The microphones or transducers required for the detector would have to be set up at a specifically calculated distance from each other, such that the phase differences seen between the two feeds of sound could be used to determine the position of the sound source. Once detection of the signal was possible, a DSP board capable of successfully sampling the ultrasonic frequency would be required. The C5515 eZDSP may or may not be capable of this, so another type of analog to digital convertor may be required. In any case, once sampled and on a DSP device, the signal would need to be first filtered to get rid of low-frequency noise and then discrete Fourier transformed to extract phase and frequency information. With this information, the sound position in a 2d-plane could be determined, in addition to its motion relative to the detector. All the equipment for this device could be easily built or put together, and so the final device would be relatively low-cost. Thus, a flexible ultrasonic motion control input device could be built relatively cheaply, and could be used by a wide range of target users for a variety of applications. White Board Spell Check Overview Overview: I hate to admit it, but often times, our elementary school educators often make mistakes when transcribing lesson plans on whiteboards. This is not ideal, because sometimes the transfer of information from teacher to student has been compromised due to a misspelling on a whiteboard. However using vision technology and correctly processing the image will alert the teacher/class of a misspelled word and prevent such mistakes from happening in the future. Proposed project effort: For our purposes we will need the “teachers” to write fairly neatly and make sure that the letters that they used can be interpreted into letters correctly. We will require need to take a snapshot of each word written down onto the white board. After we obtain the image, we will need to perform image processing, specifically pattern recognition using edge detection to give us a signal that our Computer can actually use. We will have the processor connected to a laptop which compares the processed word, and compares it to words contained in the dictionary. When there is an error, we will send an output to the fpga, which will direct a small laser to point to the misspelled word, so that the teacher can make the correction. The spelling of the correct word will also be displayed on the LED screen. The implementation of this device in elementary schools would be a fairly useful investment, and students and teachers will both benefit from it. Mayowa Ogundipe Voice Controlled Elevator Overview Often times as engineers, we are stuck carrying schematics, voltmeters, pencils, or even cookies, and there comes a time when pressing a button on an elevator is just not a feasible option, well at least for those of us that do not remember that we have elbows. Initially the elevator will greet the user with the prompt, “what floor would you like to go to“ and present the floor options on either the FPGA LED screen. The User will then answer with one of 4 floor responses or a request for the door to open. Our version, however due to a limited budget will not be anywhere near a fullsize elevator. It will be a small one capable of transferring action figures to various floors. This elevator system is a small part of the final goal of “smart office” It is a modern take on the traditional elevator and requires the use of DSP as well as other disciplines in the EE, field. Proposed project effort: Initially the User will need to communicate with the elevator to alert the system that a user is safely inside. The audio signal will need to be parsed using some frequency analysis, and then we will need to compare the spectrum of the user specified floor, with various prerecorded floor values of the possible input floors. Ambient noise might also be an issue, so we will need to make use of a filter to cancel out any noise affecting our user’s input. After the signal has been matched the FPGA will make the decision of which floor to drive the motor to. We will likely use the FPGA for the various output of driving the motor, and sensors indicating which floor the elevator is at. The motor will stay on and mechanically drive either a rod connected to our elevator car or other more elegant mechanical options, until we get feedback from the sensors that we have reached our desired floor. The TI DSK and FPGA will be both be utilized for this project. 1 Sleep Detection Device 1.1 Overview: There are situations that people should not sleep such as while driving and the day before final exam. Especially, falling asleep while driving causes serious accident. To avoid this fatal result I want to make a device that warns a driver when he/she falls asleep. I expect that car accidents would be decreased by using this device. In addition, I think that sleep detection device is also needed by students because they need it during their final exam weeks. There will be demand from automobile companies such as GM and Ford, or I can make it a product and sell to college students directly. 1.2 Proposed project effort: First, this device needs a pupil detection sensor. This hardware detects pupils of a person and sends signal to Digital Signal Processor. Warning is activated as soon as the camera cannot find the pupils. This device involves image measurement. I will use the TI DSK and SPARTAN-3 to develop algorithm. The complete project will be on the FPGA using a pupil detection sensor. 2. Noise-cancelling Automobile 1.1 Overview: Noise-cancelling Automobile is one of project concepts suggested by Harris Inc. This system can provide comfortable and relaxing environment to drivers and passengers. For example, answering the phone, drivers and passengers are annoyed by noise from outside of the car. In addition, they want to listen to music without any disturbance. And diesel engines have more noise than gasoline engines. Noise-cancelling Automobile will handle these disturbances making drivers and passengers annoyed by cancelling the noise. Most drivers want to drive under comfortable and relaxing circumstance and passengers want to be on quite vehicles. I expect that demand for Noise-cancelling Automobile will be very high when it is applied to the industry. I can say that it is very marketable. 1.2 Proposed project effort: We need a microphone (sensor), speakers (actuator), and a DSP chip. Microphone will measure noise. Then, the chip will handle the signal from the microphone and speakers will emit noise-cancelling sound wave. Fast Fourier transform analysis and the noise cancelling will be applied to the project, and TI DSK and SPARTAN-3 will be used to develop algorithm. The complete project will be on the FPGA with a microphone and speakers. Overview: Musical tones have three identifying characteristics: volume, pitch and timbre. Volume is power, or the amplitude of the corresponding wave, measured in dBs. Frequency is the measure of how "high" or "low" a tone is. The piano, for example, has notes as low as 28 Hz and as high as 4,000 Hz, while other instruments have different ranges. Timbre refers to the fact that musical sounds are made up of many different sine waves instrument has a characteristic pattern of sine waves, which is what makes it possible to distinguish between an electric guitar and a flute playing the same note. The goal of this project is to use this information to develop a real-time song to sheet music converter. That is, when a music track is played or a song is sung, the analog signal is fed into an algorithm that outputs the matching instrument and note to create a full musical arrangement. Proposed Project Effort: This project will most likely contain two key phases: 1. Defining the musical qualities that distinguish different instruments 2.Filtering a musical tone to identify tonal qualities and find a matching note/instrument. Obviously it is up to the project team to determine the scope of this project with regard to instrument identification, but generally the system should be able to distinguish between common instruments such as a guitar, piano, bass, and drum. The development of an identification algorithm will require the use of a number of digital filters to isolate and identify those key tonal qualities pertaining to volume, pitch, and timbre. After determining these traits, an algorithm would be created most likely in C/Matlab to correctly match incoming musical tone with the appropriate note depending on the instrument. Adding the capability of detecting note length/pauses in musical notes would ultimately allow the system to digitally output a full sheet music arrangement (an LED display) matching the input analog music signal. Overview: The goal of this project is to develop a speaker and speech recognizable security system. The system will both verify the voice of a known administrator and translate speech to test for a passcode/PIN. Essentially this system would be employed as a "gatekeeper" in order to provide access to a secure system. This has many modern security applications such as mobile banking and credit card transactions. For example, to prevent credit card fraud, the owner of the credit card would speak his or her name (the “passcode”) into the proposed system, and a decision would be made whether or not to allow the transaction (authentication). Proposed Project Effort: The project is aimed towards speaker authentication as opposed to identification of an unknown user, and as such the level of sophistication of the verification algorithm may possibly be reduced. It is up to the project team to determine the level of sophistication/robustness regarding the algorithm. There would be a need to develop a speaker recognition system generally requiring two phases: enrollment and verification. During enrollment, the speaker's voice would be recorded and a number of features such as pitch and speaking style would be extracted to form a template or model (voice print). In this way the system would be trained on the authorized user’s voice. In the verification phase, speech would be compared against the previously created voiceprint to determine a match. Ideally the system would be sophisticated enough to distinguish users and allow authentication for just the single administrator. The system would also translate speech to text to determine if the correct passcode was spoken, adding another layer of security. Likely the TI DSK and Spartan will be used to develop the algorithm. Ideally the finished project would be implemented on a portable device, wirelessly transmitting key speech data to a processing unit that would determine authentication. RFID-based Indoor Positioning Overview: It is quite common to see people searching for their car keys, cell phone or TV remote almost every day. Radio Frequency Identification (RFID) technology has been put to use in some warehouses and large manufacturing facilities to position and track goods. But, such RFID-based positioning systems are not widely adopted because of the possibility of ultra-high frequency (UHF) interference when multiple RFID readers are used. However, this technology can be used very efficiently in small and closed environments. The proposed system is a stand-alone one and works without a computer. It consists of a control interface, a set of 3-4 RFID reader antennas and a few RFID transponders. The control interface has an LCD display, a keypad, a few control buttons and a DSP processor. The RFID reader antennas are fitted in different parts of the room / house. These readers transmit and receive unlicensed frequencies in the UHF spectrum and are controlled by the DSP processor in the control interface. The RFID transponders are attached to the objects that need to be positioned (for example, car keys). The processor will estimate the location of the RFID transponder relative to the reader antennas by means of triangulation. In order for this relative position to be understandable to the user, an initial setup must be done to map the area covered by the reader antennas. This calibration can be done easily by the user after installing the reader antennas. In setup mode, the user basically places an RFID transponder in different places and keys in names for those places. And then, the user gives a name to each of the RFID transponders. Once the setup is done, the user can search the location of any of the transponder, and the LCD display of the control interface will estimate two closest estimate of the location of the transponder. Proposed project effort: This is a big and time-consuming but kind of a low-risk project. The reader antennas and the RFID transponders are widely available in the market and can be bought easily for a reasonably low price. For instance, very light Monza 4 or Higgs 3 EPC Gen2 IC transponders can be used with four Sirit Infinity 510 readers. A Sirit Infinity 510 reader covers a cell of 4m x 4m with antennas in corners. The processing can be done using an FPGA device. For instance, Xilinx Virtex4 Lx-100 can be potentially used for the main FPGA and Samsung S3C2410 ARM9 processor for main MCU. The reader antennas will employ measures such as TDMA to prevent interference between two or more antennas. The readers will transmit signals only when it is required. EPC Class 1 Gen2 standard is the most popular UHF band RFID standard presented by EPCglobal. In 2006 synchronized to ISO/IEC 18000-6C standard, it leads the RFID world standard stream. As per the standard for the Americas, the frequency of the signal transmitted and received will be between 902 MHz and 928 MHz. The visual selection based text input might be problematic, so a touch screen interface might be preferred for text input. People Counter in front of Elevator Overview: This project is a sub-project of the Harris proposed concept of ‘Smart Elevator Control System’. As per the proposal of Harris, the objective is to design a control system for a “smart elevator” that avoids situations where a full elevator car stops at a floor to pick up additional people that it can’t accommodate and sends multiple cars to particular floor when it is needed. While both these two cases are interesting, the former case is fairly well known – most elevator systems installed in the last decade are in fact capable of counting the number of people currently in the car. So, in the proposed project, the second case will be solved, which involves counting the number of people waiting outside the elevator in a particular floor. It is also required to estimate the waiting time for the particular floor. Proposed project effort: Though this sounds to be an easy task, this is distinctly different and much more complex than counting the number of people inside the elevator car. Some of the differences are, one, the area outside the elevator is not a controlled environment as in the sensors should distinguish between a person passing by and a person waiting for the elevator. Two, the system should be intelligent enough to take into account the flow of the people in and out of the elevator car. Three, the system should act more proactively if a person or a few of them get bored of waiting and start walking away to take the stairs. This brings up an idea of installing a sensor on the stairway of each floor. And another interesting idea, the system can also detect people in wheel chairs and give them a higher priority, or if not, at least consider the fact that they will need a larger space in the elevator car. Implementing this is a little expensive. A prototype implementation can involve two video cameras connected to a DSP processor. The two video cameras can be purchased for a low price. A directional camera is good enough with a directional range of close to 180 degrees. The people counting will be performed using the Dijkstra-based people counting algorithm. Though this system involves complex video processing, this can be implemented in an FPGA. However, this project will consider that only as a last step, if everything else is completed and working. As per the proposal, the video processing will be performed using the TI DaVinci Digital Media Processor. Online Image Enhancement Neerad Phansalkar Overview: Images/videos captured through general purpose cameras generally have significant noise in them. This leads to poor quality images, and these images need to be processed through softwares like photoshop. However, if denoising is embedded in the capturing process itself, it would make life a lot easier for the end user of the images. Following this denoising argument, one could also implement other simple image processing techniques directly while capturing the images. Histogram equalization is an example of such a technique, which is used to improve the contrast of the image. Another example is image sharpening, which is used to sharpen the edges in the images (i.e. make the edges more prominent). Still another example is automatic brightness adjustment, which can be used to correct the intensity when shooting particularly dark or bright scenes. Brightness adjustment might also involve adaptive brightness adjustment, where only part of the scene being captured is too dark or too bright, and only that part needs to be corrected. With these simple but important techniques being embedded directly in the image capture process, the end user would be able to use the images directly without any post processing. Also, if some complex post-processing is to be performed, the user would have more time to work on it. Proposed project effort: For developing the prototype, a simple low cost camera (such as https://www.sparkfun.com/products/8739, or a webcam) connected to a FPGA/DSP will be used to capture scenes. The live feed from the camera will be displayed on some kind of display. The system will also have inputs (e.g. push-buttons), for the user to select which algorithms should be performed on the feed from the camera. Using this, the feed from the camera will passed through some combination of different image enhancement algorithms (if the user selects all the buttons, the live feed will be processed through all enhancement algorithms). Some ideas on how the algorithms might be implemented are given below. For denoising, the video stream from the camera will be processed in the FPGA using some denoising technique such as wavelet based denoising. Haar Wavelet transform can be computed very fast and is suitable for real-time computations. From the HH component of the Haar transform, the noise level can be estimated (assuming Gaussian noise) and denoising can be performed. Contrast enhancement can be performed by histogram equalization, or through some pre-defined transformations (e.g. logarithmic, exponential, affine, etc). Next, image sharpening can be performed by passing the video stream from the camera through a high boost filter (original image + high pass). Brightness adjustment can be performed by finding the average intensity level of each frame, and then based on that value, transforming all the individual intensity values in the frame to adjust the overall brightness. Adaptive brightness adjustment can be performed by dividing the input image into different zones, and performing brightness adjustment over those zones separately. The method to divide the image into zones needs to be investigated for smooth brightness adjustment over the entire image. If time permits, other algorithms (possibly more complex) can be implemented as long as they don't reduce the frame rate of the video stream to a very low level. 360 Degree Object Tracking Neerad Phansalkar Overview: Object tracking has applications in many areas including visual surveillance, gaming, video recording etc. However, a problem with normal object tracking is that once the object goes out of the field of view of the camera, it can no longer be tracked. This can be solved by using many cameras and keeping track of the object in different camera feeds, as the object moves from the field of view of one camera to the other. However, using multiple cameras is expensive and the algorithm to track the object over different cameras will be complex. A solution to this is to create a system with a rotating camera, and rotate the camera in the direction of motion of the object, so as that the object never leaves the field of view of the camera. Such a system will be very simple and can have many applications, such as continuously tracking people in high security areas, recording speeches/lectures with a large stage which does not fit the field of view of the camera, etc. Project proposed effort: The object tracking module can be implemented using a simple motion detection algorithm such background subtraction (this will, however, limit the applicability of the system to scenes with a single moving object. If time permits, complex object tracking algorithms can be considered later). A low cost camera (such as: https://www.sparkfun.com/products/8739) will be used. An FPGA acquiring the video stream from the camera will be used to implement the object tracking algorithm. The camera will be mounted on a motor. A stepper motor is a good choice for the motor, because of a couple of reasons: (i) precise control over the degree of rotation can be obtained with a stepper motor, and (ii) it is very easy to interface a stepper motor with logic circuits. The output from the tracking algorithm will control the motion of the motor. The motor will be rotated such that the camera mounted on it always tries to keep the object at the center of its field of view. The video of the tracked object will be displayed on some kind of display, or it will be sent to a computer to be stored for later viewing. EECS 452 PRE PROJECT IDEAS 1. WAVELET DOMAIN AND MOTION COMPENSATED VIDEO DENOISING 1.1. Overview: Noise in video sequences increases image entropy, which in turn reduces the effective video compression performance. Hence a noise reduction step is introduced prior to encoding. The goal of the project is to integrate video denoising and video coding by reusing the motion estimation resources from video coding module for video denoising. In most cases, the motion fields produced by real-time video codecs do not capture the actual object trajectories, and as such, cannot be applied directly for motion-compensated denoising. This problem can be overcome by introducing a motion field filtering step that refines the accuracy of the motion field enabling the output of the same motion estimator to be used as an input for the coding scheme as well as an input to the denoiser. 1.2. Proposed Project effort: The video denoising method is based on Spatio-Temporal filtering. The block motion estimates from the video codec is first passed through a Motion Field Filter, followed by a Motion Compensated Temporal Filter, in effect performing pixel-domain temporal filtering. This step is followed by Wavelet domain based Spatial filter. The motion field filtering technique eliminates spurious motion vectors from the spatial areas in the video frames where no actual motion exists. The denoising based on motion-compensated recursive temporal denoising filtering along the estimated motion trajectory is a very powerful approach; provided that the motion is correctly estimated. The temporal filtering should take into account the reliability of the estimated motion vectors and adapt the amount of smoothing accordingly. The noise remaining after the temporal filtering is spatially non-stationary, which requires the spatial filter to be adaptive to the locally estimated noise variance. This is a fuzzy filter which has low complexity and is hardware friendly. The algorithm can be tested using a DSP processor for sequence of noisy video sequences. The MSE and PSNR values can be obtained for the images, under varying levels of additive white Gaussian noise with known variance and zero mean. 2. REAL-TIME LIP-SYNCH FACE ANIMATION DRIVEN BY HUMAN VOICE 2.1. Overview: The goal of the project is to synthesize mouth movement from acoustic speech information. Techniques for converting the human voice into visual parameters of mouth movements have applications in face animation, human-computer interfaces, and joint audio-visual speech recognition Mapping the audio feature space to the video feature space can be done at different levels depending on the speech analysis being used-the frame level, the phenome level and the word level. 2.2. Proposed Project effort: At the frame level, a universal mapping can be derived to map one frame of audio to one frame of visual parameters using the Gaussian Mixture model method. This method uses a large set of audiovisual parameters to train the mapping. At the second level, phoneme level, the mapping could be found for each phoneme in the speech signal. The first step of mapping from audio to visual parameters is to segment the speech sequence phonetically. Then we use a lookup-table to find out the sequence of visual features. The look-up table is predefined for the whole set of phonemes. In this table, each phoneme is associated with one visual feature set. At the third level, word level, we can explore the context cues in the speech signals. First we use a speech recognizer to segment the speech into words, like “mat” and “book”. For each word, we can create a Hidden Markov Model (HMM) to represent the acoustic state transition in the word. For each state in the HMM model, we can use the methods as in the first level to model the mapping from acoustic to visual feature frame by frame. The speech can be recorded through a microphone, the algorithm can be implemented on a DSP processor and the output can be displayed on a LCD display. Security system based on voice recognition Overview In today’s modern world, where security has become of paramount importance, wouldn’t it be nice if we had an additional layer of security that protected our house or car? My project proposal is to have speaker recognition as an additional level of security. For example, to unlock our houses, not only will a key be sufficient but we would have to say “open’ as well and only if the sensor recognizes our voice will the house door open. Thus, even if we lose our house keys, we would not have to be too worried as no one would be able to enter our homes. This system could also be used for cars or at ATMs as an additional security measure. For the purpose of this class, on a smaller scale, I would like to come up with a sensor that is able to detect and distinguish between 5 different voices and respond accordingly. This project works on the basis that each individual’s voice has its own unique speech waves. Thus we would need a way to analyze an individual’s speech waves to determine if it matches a stored set of speech waves in order to confirm the person’s identification. Proposed Project Effort The speech signal can be characterized as a slowly timed varying signal. We will use Digital Signal processing to analyze the speech waves of each individual by a process called short-time spectral analysis , which uses Mel-Frequency Cepstrum Coefficients (MFCC). In this process, firstly we take the fourier transform of the waves generated by the person’s voice. Next, we map the powers of the spectrum obtained above onto the mel scale, using triangular overlapping windows. The mel scale is a perceptual scale of pitches judged by listeners to be equal in distance from one another. Following this, we take the logs of the powers at each of the mel frequencies. Lastly, we take the discrete cosine transform of the list of mel log powers, as if it were a signal. The MFCCs are the amplitudes of the resulting spectrum. We can then match these MFCCs with MFCCs from samples of the person’s voice taken before to confirm his or her identity. However, one drawback is that MFCCs are sensitive to noise and thus, may not be effective in a noisy environment. One way to overcome this would be to normalize their values to reduce the effect of surrounding noise. System to produce Real time guitar effects Overview During live performances or recording sessions, it is often hard to produce real time effects to complement the guitarists. During recording sessions, effects are added in either before or after the actual recording takes place. During most live performances, effects are also chosen before the actual performance begins. The aim of this project is to create a Graphical User Interface (GUI), which would allow the user to add effects to the performance in real time. A GUI is a type of user interface that allows users to interact with electronic devices using images rather than text commands. Thus, the aim of this project is to come up with a way to synthesize real time guitar effects to enrich the performance. Some examples of effects that could be created include creating an echo or creating a chorus effect. Proposed Project Effort During a performance, the guitar signal that is being played is first fed to an analog to digital converter. It is then passed into a digital signal processing board, where it passes through various filters that have been designed in Simulink. Each filter would correspond to a different effect. By manipulating the filters correctly, a user would be able produce the desired effects. The user will be able to have complete control over the filters through a Graphical User Interface (GUI), which is not hard to master. Once the desired effects have been added by the user, the signal is then passed through a digital to analog converter. It is then sent out through am amplifier. MATLAB and Simulink will be used extensively in this project as they allow for quick conversion of audio for testing. Furthermore, they allow for the graphical modeling of the filters. We would also be able to easily link the GUI. A noise filter could also be added in to increase the clarity of the effects produced. Peter Raymond EECS452 PPI 1. Digital Modeling of Analog Audio Studio Equipment 1.1 Overview: The idea behind this project would be to model one or multiple pieces of analog hardware used for audio processing when recording and mixing in a studio or live sound environment. My first choice would be to attempt modeling a compressor or limiter. Aside from programming the standard adjustable settings (attack, release, make-up gain, and feed-forward/feed-back circuit types), I would want to focus on non-linearities and distortions that occur based on the frequency content and gain of the input signal. The audio industry has a large attachment to vintage analog gear for the unique sonic signature it puts onto your audio files. By modeling a piece of analog gear, I hope to understand some of the qualities that make up this signature and recreate them digitally. Proposed Project Effort: From a high level, the DSP techniques that I am familiar with that I believe would need to be used would be to sample the signal, then take a Fourier Transform of the signal, make modifications to the gain of different frequencies, and then convert the signal back to the analog domain. When sampling, I believe it would be helpful to use a much higher sampling rate with dithering and a low-pass filter to remove as much noise as possible from quantization error outside of the audible spectrum. A concern that I have about this project is whether the DSP chips and boards we will be using have enough processing power to handle this task. Will they have enough memory or be able to process instructions quick enough for it to still seem real-time. If this idea needed to be expanded or added upon, besides modeling different types of equipment (Equalizers, etc...), I believe it could be interesting to attempt a feedback suppression algorithm for use with live microphones or an inverse fletcher-munson volume knob to make all frequencies perceived consistently regardless of listening level. Peter Raymond EECS452 PPI 2. Vocal Processing Module for Pitch Correction and Harmonization 2.1 Overview: In comparison to guitarists, singers do not usually have a wide set of effects specifically designed for vocals. This audio signal processing unit would attempt to change that by focusing on processing that would be helpful for vocalists to sound better and become more creative. In an ideal scenario, this unit would have an equalizer - allowing the vocalist to tune the frequencies of their voice, an autotuner correcting their pitch without noticeable artifacts or recreating a T-Pain sound, a vocoder - allowing the vocal to be synthesized with another audio source, and a harmonizer - allowing to transpose the vocal to sing in thirds, fifths, and octaves, etc... These vocal effects would be used in live performance situations and some of the effects can be identified in a significant portion of popular music today. 2.2 Proposed Project Effort: The DSP required for a project of this scope would use different methods for each effect. After sampling the signal, below is a brief description of possible digital signal processing to achieve each effect: ● Equalization - This may be accomplished by taking a fourier transform of the signal, and then adjusting the gains to choice at different frequencies. It would then be converted back to analog for the listener. ● Autotuner - This could be accomplished by using a phase vocoder to change the duration of the sound and then alter the frequency to be the correct pitch of the original duration. ● Vocoder - This could be accomplished by using a microphone as the modulator and another waveform as the carrier. ● Harmonizer - This would use the phase vocoder to possibly in addition the vocoder to shift the original vocal up or down by a specific ratio to achieve the desired pitch interval. Pre-project ideas (PPI) Jonathan Root uniquename: jonroot 1 PC based Audio pitch shifter/harmonizer 1.1 Overview: A PC-based Audio pitch shifter/harmonizing software package would open up the world of auto-tuning, live pitch-shift (vocorder), and automated harmonization options to the aspiring musician/producer by utilizing the most powerful processor they already has at their fingertips: their computer. Although these features are currently available in stand-alone units by brands like Boss and Digitech those can be expensive and comparatively inflexible with limited applications and interaction options related to their hardware and available inputs and outputs. A PC-based implementation would allow for musically intuitive controls via a USB or MIDI keyboard or even another analog instrument (a guitar for example) using a separate input. The control signal from one instrument input could then be used to control the parameters of filtering and pitch manipulation of the other. For example playing a C major chord on a guitar on the control input would result in a C major harmony of the voice coming in via microphone on the active sounding input. The possibility that this system would glitch or create conventionally “undesired” effects would be welcomed by experimental musicians as long as the primary stated function worked reasonably well under normal circumstances and settings. A PC-based system also allows us to build in a great deal of adjustability of the various parameters into menus in order to keep the interface clean and user friendly for live applications, but powerful enough to experiment with unpredictable behaviors in the home or studio environment. 1.2 Propose project effort: Major hurdles in accomplishing this design include rapid analog to digital conversion of two audio inputs coming into the computer to with minimal latency and enough resolution for spectrum analysis and playback and real time processing of those signals. Research into inexpensive audio interfaces for PCs would need to be done before one was chosen. Playback using the existing audio out of the computer should be adequate for our purposes. On the software end of things a program would have to take both inputs, rapidly implement Fourier and amplitude analysis to find the parameters of both signals and then filter and/or modify the live signal accordingly. The initial goal to create an external controlled pitch shifter/harmonizer could be expanded to include musical key detection, auto-tune pitch correction, automated harmonies and additional filters if time/group size permits. 2 Sound triggered modular lighting system 2.1 Overview Bold, beautiful, synchronized lighting rigs are commonplace in the concert and dance music scenes but until recently were entirely unaffordable by small music venues or independent artists. This project would be to create a transportable, inexpensive, modular lighting system that can react to sound either from an internal microphone or audio signal fed in from an external source. The lighting rig should be controlled an inexpensive internal DSP chip to limit costs and decrease the system's dependence on additional hardware. Offline programming of the lighting rig would be made available by USB and custom software to allow for user customization and expression. The lighting hardware itself would consist of a variety of colored LEDs mixed together within each light housing to change its color and brightness in accordance with the parameters set on the DSP control unit. Specific colors or intensities could be set in accordance with specific musical pitches, or using a multi-input system, with specific instruments or inputs, and sensitivity to attack and release could also be adjusted. Additionally, with multiple lights running together they could dictate which one reacted to what input, frequency range, and/or amplitude. 2.2 Proposed project effort An inexpensive analog to digital converter would have to be either purchased or created and a DSP chip would have to be chosen to execute the necessary frequency and amplitude analysis. Each of these would control one or more LED-containing light housings while would likely have to be fabricated and wired from scratch. At least two lighting 'units' with separate chips would have to be created in order to demonstrate their ability to work on concert with one-another as well as independently. The DSP chips themselves should also be able to be programmed together, localizing tasks to the correct chip while relying on a particular input or else have the ability to work as a master/slave system, running the program on the master chip while the slave merely controls its own lights in accordance with orders it receives. If the master/slave route is chosen a hardware switch should be created to make this readily available to the user. An additional hardware control for volume threshold would also be implemented to allow for real-time on site adjustments without the use of an external computer. On the software end the user should be able to contour the responses of the lights based on three parameters: pitch (frequency), amplitude (volume), and input (instrument) as to create an expressive and individual show. EECS 452 - PPI - Paul Schroeder Local Positioning System The Local Positioning System would be a system that would provide real-time, accurate location information on a smaller scale than GPS. The system would work similarly to GPS and would have three broadcasting stations. Each station would continually broadcast time code. The receiver would receive these time codes. The difference between the time code and the time of arrival represents a delay which, combined with the transmission speed (~speed of light), can be used to calculate the distance of the receiver from each of the broadcasting stations. Using triangulation, the location of the receiver relative to the stations can be calculated. Using the known location of the broadcast stations the relative position can be used to calculate an absolute position. The applications for a system like this are numerous. Some examples would be: ● Smart, location aware inventory in factories ● Navigation on smaller scales, such as within buildings. Developing this system would be challenging. The challenges include accurate timekeeping as well as keeping the individual broadcasters and receiver reasonably synchronized. Additionally, techniques from the field of Digital Communications would have to be applied in order to assure robust and error-free signal transmission. The location information would have to be filtered to have smooth, noise-free location information. Finally, a way to multiplex the broadcast signals on one frequency-- perhaps using CDMA-- would have to be developed. Video Theremin A theremin is a modern and unique instrument that uses the capacitance caused by the proximity of hands to metal rods to vary pitch and volume levels (For more info: http:// en.wikipedia.org/wiki/Theremin). The Video Theremin would use a camera and computer vision techniques to detect the presence and location of the users hands to relative to the device. The location of the user’s hands would be used to vary pitch and volume, and thus play the instrument. The system could also be configured so that one of the hands actuates other parameters like filter characteristics. The main challenge of this project would be developing a robust feature recognition system to detect the location of the user’s hands. The other main component would be digital synthesis of the instrument’s audio signal, as well as filtering the inputs to get a smooth response. There would be filters and perhaps various waveforms in order to make the instrument’s timbre more interesting and/or pleasant. 1. Ambient Noise Based Signal Amplitude Scaling Mechanism (Audio related applications) 1.1 Overview: In today’s world, most people tend to have to switch their phones from “LOUD” to “”S ILENT” mode when they enter class or the library, or when the y go to a meeting. Conversations are often paused when on board a bus, a plane or a train so that people can in crease the in -call volume on their cellphones. Noise cancellation headphones today cost a significant amount of money (of the order of a few hundred dollars) and are still incompetent at handling and correcting for ambient noise while automatic audio scaling is non -existent. A simple feature which could be added to most cellphones and audio devices is a system which “measures” surrounding noise levels and then makes an intelligent decision as to whether to increase the signal amplitude so as to account for high ambient noise. The main idea behind this proposal is to implement a system which is capable of tracking the level of surrounding noise and correcting for it. This correction could be as simple as raising or lowering the volume in portable media player headphones, raising or lowering the speaker volume of mobile phones during phone calls when the noise level around the user changes, raising or lowering the ringer volume on your cellphone or even adjusting audio broadcasting device amplitude levels in public locations. In some ways, this is similar to the automatic scaling of display brightness in modern cellphones based on ambient light. 1.2 Proposed Project Effort: We would need to start off by figuring out a way to effectivel y measure the level of ambient noise and to quantize it into several levels depending on the resolution of the correction system we wish to implement. For this, we would need a suitable compact microphone which captures ambient noise and an ADC/DAC pair. A suitable period of capture would also need to be defined – high noise levels over this time period would trigger a change in signal amplitude. Captured noise levels would then be compared with pre -determined thresholds and the signal amplitude would then be suitable scaled. A parametric equalizer like control is another interesting feature that could be added; that is – boost onl y certain frequencies of your audio device based on the features of the environmental noise. For this purpose, adaptive filters would need to be designed and implemented; closed loop filters could be attempted but this could be highl y complex. A suitable DSP chip with sufficientl y high RAM ( it cannot afford to run out of memory) would be the core component of the design; it should also be capable of real time processing and should hence operate at high speed. An audio device like an MP3 player could be connected to the DSP chip as a test device – an algorithm would have to be developed which would scale signal amplitude based on the above described parameters. I hope that all future cellphones, audio players and broadcasting devices would implement some version of this idea in the near future. 2. OFDM based transmitter-receiver pair with error correcting turbo code – attempt to maximize achievable data rate and make minor modifications to the turbo code algorithm which could take us one step further towards achieving capacity 2.1 Overview: Most smartphones today use LTE (4G) – LTE, an evolution of the GSM/UMTS, is one among the many wireless data communications standards. LTE has pushed the limits on achievable capacit y and speed of wireless data networks using new DSP techniques and modulations that were d eveloped around the turn of the millennium. One of the key elements of LTE is the use of OFDM (Orthogonal Frequency Division Multiplexing) as the signal bearer and the associated access schemes – OFDMA and SC-FDMA. OFDM has many advantages including its ro bustness to multipath fading and interference. In addition to this, even though it may appear to be a particularl y complicated form of modulation, it lends itself to digital signal processing techniques. In information theory, turbo codes are error corre cting codes with performance close to the Shannon theoretical limit. The encoder is formed b y the parallel concatenation of two convolutional codes separated by an interleaver or permuter. An iterative process through the two corresponding decoders is used to decode the data received from the channel. Each elementary decoder passes to the other probabilistic information about each bit of the sequence to decode. OFDM and turbo codes are cutting edge technology in today’s wireless communications industry. But can they be bettered? 1.2 Proposed Project Effort: The aim of this project is to research LTE or specificall y the turbo code with the aim of suggesting improvements which could provide scope for an increase in data transmission rates with minimum errors at the receiver. The minimum scope of this project would be to build a perfectl y working OFDMA system with turbo code implemented as the forward error correcting code. The next step would be to research ways to improve the turbo code with the aim to maximize data rate and minimize receiver errors. MATLAB could be used to test the enhancements before implementing them on the model built. This would probabl y be a high risk project as results to the proposed research are not guaranteed. The hardware required would be a pair o f antennas, an ADC/DAC pair with very high resolution or a DSP chip which performs the same, a fixed point DSP chip (preferably 64 -bit) with high RAM, an RF tuning circuit and oscillator. PC’s could be used to generate the data to be transmitted and displa y the data received. Ryan Smith PPI Assignment 1.1 Real-time music transcription from a live source 1.1.1 Overview: Music transcription gives musicians the advantage of formalizing recorded music with music notes. This allows musicians to make corrections to previously recorded music, duplicate music using other instruments, and explore the confines of their own instruments. Current day music transcribers, such as the Loop-a-Lick software, do not support real-time processing. In other words, they only process pre-recorded music. Real-time processing would allow musicians to spend more time composing music and honing in on their creativity. Without real-time processing musicians must spend time, or even money, repeatedly recording themselves onto a memory device and uploading the files to a music transcriber, just to see what they played. Ideally musicians should be able to play whatever comes to mind and have the notes and rhythm appear on the screen in front of them. 1.1.2 Proposed project effort: This project could take on various degrees of difficulty, with the basic form taking in an audio signal and displaying the rhythmic pattern on the screen, to the more advanced form of recognizing the pitch of a note and charting it, and even potentially playing it back to you. This project would require a basic understanding of musical notation as the transcriber would be outputting notes on a staff. The device would need to be able to receive an audio signal and through digital signal processing the goal would be to convert this to a digital form and analyze it to determine the duration and /or frequency of the notes. This would most likely be programmed on an FPGA and would also require a C5510 Digital Starter kit for sound detection and analyzing purposes. Upon distinguishing the notes and their length, the computer processor would then print them to the screen in the form of written music, ideally using staff notation. This would be done by programming the frequencies of the notes into the computer based on the desired instrument and having it match them up with the notes being played. The end users would be musicians and composers all over the world with a creative mind and looking to create that next masterpiece. Ryan Smith PPI Assignment 2.1 Motion controlled software for devices 2.1.1 Overview: Technology is vastly moving from touch operation to that of gestures. A common complaint of most touch screens is that it messes up the screen with all the finger prints and smears. Another concern is that you cannot use them under all conditions. For example if your hands were to become clammy or wet it would not recognize them and/or damage the product, or if you were wearing gloves it wouldn’t register the contact. A solution would be to make touch screens ‘touchless’. Each device would have a camera which would recognize gestures to perform common actions as well as move a mouse across the screen. This would ease overall use of most handheld and even desktop devices (phones, tablets computers, etc.). 2.1.2 Proposed project effort: Essentially the project would consist of constructing the technology behind motion control (as it relates to microprocessors) and applying it to common computer systems. Initially there would be a need to determine how to read in various gestures as recognizable patterns. This would require the programming of a video processor. This project would also require the use of a FPGA and most likely other DSP software. There would need to be a breakdown of common actions taken on devices and how they could be represented as distinguishable gestures for proof of concept purposes. The main challenge comes with actually performing the action on the device. Heavy programming would be required in order to achieve the desired output. The end users would be the makers of cell phones and tablets as this project would provide the software to enable the touchless use of a device. FPGA based Adaptive Noise Cancelling System for Automobiles 1.1 Overview Noise cancellation systems were originally built to counter and cancel out the noise in the cockpits of flights, eventually evolving into noise cancellation headphones that are used for multiple purposes including aviation applications. The more exclusive of these noise cancelling headphones are even priced at around 300$ per piece. These headphones sometimes use a combination of active and passive noise control. Automobiles also use these systems for real time noise cancellation to keep the cabin free from both engine and road/wind noise. Active Noise Cancellation (ANC) reduces undesirable noise by generating what is sometimes called an ‘anti-noise’ signal using certain signal processing algorithms to effectively cancel out the detected noise. This is effectively destructive interference for a constructive purpose. 1.2 Proposed project effort An automobile presents a variety of problems to be overcome while implementing such algorithms. Will the noise closer to the engine be the same as the noise at the back of an automobile? No. Therefore will we need to implement separate noise cancelling systems for different parts of the car? Yes. Why not just implement a one-time filter that eliminates the engine noise at the source during manufacturing, you ask. These filter coefficients would be fixed. The drawback of such a system is that it doesn’t take into account the concept of aging engines due to which the noise varies considerably. So a four microphone system is proposed with each microphone capturing the input from the different positions in the cabin. Now each of these has its own ANC system. AKG C3000B microphones could be used to obtain the input reference signal from the noise sources. Each ANC unit is comprised of an adaptive digital filter that has constantly changing coefficients depending on the noise and this filter gives an approximation the noise which is then subtracted from the original signal to eliminate the noise and leave behind the desired signal. An FIR filter is used and it’s coefficients are constantly changed by an adaptive algorithm implemented on a Spartan-3 FPGA board which is used along with an audio codec like Philips UDA 1355H. The adaptive algorithm which is widely used to manipulate the filter coefficients ANC is the filtered x-LMS (LMS-Least Mean Squared). Automotive companies would benefit greatly from noise cancellation implementations of this sort. In the future, this could also double up as an engine fault detection system where the noise generated by the engine is used to determine if it in good working condition. This could be done by learning the typical noise generated by the engine and comparing it to the noise that is estimated by the filter. Road noise could affect this reading but there are ways to get around this problem too. Sound Detection and Localization 1.1 Overview Identifying a particular sound in any environment from among a cacophony of sounds makes it a difficult task. Once the particular sound has been identified, the next step is to localize it. Sound localization is done by the human brain using subtle differences in intensity, spectral and timing cues. The difference in arrival time between the ears and other inter-aural cues gives the brain a good indication of the distance and direction of a particular sound. Also, the auditory system can extract the sound of a particular sound source out of interfering noise. So we can concentrate on only one speaker if other speakers are also talking (the cocktail party effect). Sound from interfering directions is perceived attenuated compared to the sound from the desired direction. The auditory system can ramp up the signal-to-noise ratio by up to 15 dB, which means that interfering sound is perceived to be attenuated to half (or less) of its actual loudness. But modeling such a system is near impossible. But we can attempt to build a model that almost entirely emulates the working of the human body. The concepts remain the same except that multiple microphones and an FPGA are used to do the listening and the signal processing respectively. 1.2 Proposed project effort A spectrogram is used to identify a particular sound. It can either be approximated as a filter bank that results from a series of Bandpass filters or created using Short-time Fourier Transform (STFT). This can be used to differentiate between different sounds and isolate a certain sound (Eg. Gun-shot). Then we implement an algorithm that can localize the said sound on the Cyclone-2 FPGA. To display the spectrograms, the DE2 board outputs VGA signals. For this application we require multiple microphones in the vicinity. Each microphone relays the signal it receives back to the Base Station where the basic idea is to sum up the contribution of each microphone after appropriate filtering and look for a direction (angle) which maximizes this sum. Particle velocity is another quantity related to acoustic waves and is a vector (containing directional information), by which one can obtain a source direction directly. This can be done using a Particle velocity probe. Also, the time difference of arrival (TDOA) i.e. the delay in reaching each microphone provides us with information about the distance at which the object emitting the sound is located. Using this, it is possible to almost exactly predict the location of the object emitting the sound. This will come in mighty useful in applications like Gun-shot localization. This requires a certain amount of precision and this setup could achieve that. Matt Tannenbaum Physiological Signal Interpretation Overview: Physiological signals are a good indicator of how well our bodies are functioning. Being able to interpret these signals in a low-cost, non-invasive way could be hugely beneficial to countless amounts of people. When people have certain health conditions, it is important to be able to respond quickly. It would be beneficial if there were a way to respond automatically to changes in physiological signals. For example, autistic people often feel anxiety in certain situations, but can use vibration to ease the anxiety. If there were something to detect when they were feeling anxious, something like a vibrating vest could be activated automatically before the anxiety becomes too severe. It could automatically turn off when the anxiety subsides. People with Cerebral Palsy can use vibration to alleviate pain. Detecting and interpreting pain signals through the skin would be able to trigger something like a vibrating vest to start alleviating pain immediately. A device that could read multiple physiological signals and store them would also be beneficial in emergency situations. If a patient needs monitoring or is at a high risk for something like a heart attack, it may be useful to the first-responders to have physiological data already on hand that they could read off. Timing means life or death. The low-cost would allow more people to benefit from such a device. Proposed Effort: Electrical and/or pressure sensors could be used/combined to detect physiological signals through the skin. Some signals that can be detected using these kinds of sensors are skin resistance, pulse, respiratory rate, and muscle contraction. Systolic blood pressure can also be detected by passing light through the skin. Research would be required to determine what certain physiological signals look like and how they change, as well as what types of signals/changes are associated with different physical/emotional conditions. Once the desired signals have been detected, they can be used to track changes or to determine if a threshold level has been exceeded. For example, changes in skin resistance combined with an increase in pulse could be a sign of stress. In the case of someone with autism (or really anyone), this information could be used to activate a vibrating vest to begin easing anxiety or pain automatically. When the signals return to normal, the vest would turn off. An FPGA could easily be used to implement a finite state machine and send/receive control signals. Automatic Song Generation Overview: Almost everyone enjoys music, and some probably wish they could create their own. Or maybe some singers would like an on-demand backup band to sing along to. Or maybe someone just has a great idea for part of a melody but can’t figure out what to harmonize with it. Wouldn’t it be great to hum or sing or play a melody and then a song is automatically created? A program could analyze what someone sang/hummed and use that as the basis for the main melody. Other instruments or a genre would then be selected and individual parts would be composed for each instrument. The result would be a complete, unique song based on the user’s original melody. Once the song is created, a singer could then sing along to it and it would already be harmonized. No adjustment would be required by the singer. Or maybe the person who thought of the melody would have some new inspiration for a rhythm section. Or someone who doesn’t understand much about music could learn a little bit about harmonization. Proposed Effort: This project would have several components: pitch detection, instrument synthesis, melody analysis, harmony creation, and various UI. Pitch detection: Fourier analysis would be used to determine hummed/sung/played pitches. Once the frequencies are determined, they can be matched to notes. Instrument Synthesis: Additive synthesis could be used to generate pitches with the unique timbres of specific instruments. There can be a bank of instruments to choose from. Melody analysis: The relationships between the notes will be determined once the pitches are detected. This can be used to determine chords that can be built on these notes. Harmony creation: Once the chords are determined, different concepts such as counter point and the circle of fifths can be used to create four-point or other harmonies. A good place to start would be stepping up or down to the closest note that can create a valid chord. If a beat can be determined, drum patterns can be generated, or if no beat can be determined, it can be created. The drum part may be difficult, at least to keep unique. There should be a lot of room to create variety. For example, someone humming one melody should get a different song each time they hum the same melody. Also, songs using the same instruments shouldn’t sound like they’re basically the same thing. This is probably the biggest challenge. The program would work as follows: singer hums a melody the computer records. Then the melody is played back in case the singer wants a redo. Once the melody is submitted, its notes are analyzed and chords are determined. Then the user adds instruments or selects a genre and harmonies are created. Finally, the song is complete and can be played back. Different instruments can also be muted or changed with filters/volume control/effects/etc. James Tyler EECS 452 Project Proposal Ideas Proposal 1: The consumer boating industry is an excellent frontier for active noise cancellation that is nearly impossible in automobiles. In the last few years, cockpit noise levels have become an important factor when deciding on which boat to purchase. In response, manufacturers have tried to dampen the largest source of noise on every vessel, the engines, by installing sound insulating foam inside the engine room. The sound produced by even a single engine humming along at a few thousand RPMs can be very loud, and conversation at the stern of the ship while underway is often impossible (largely because you are sitting right above the engines). Insulating foam can be good for a modest improvement, but what if great improvement could be made cheaply? Active noise cancellation is one possible answer to this problem. Our FPGAs could easily handle and process the audio end of the problem. We would need to sample the ambient noise right around the engine bay (this could be simulated by taking a sample recording on an actual ship for power and frequency or email a local company, say Four Winns, for data). To demonstrate our algorithm and work through the solution, we would simply need to purchase a couple microphones and speakers. This could easily be implemented in industry since today's boats already have many speakers on board which would be necessary to output the noise cancellation signal. Automobiles have countless large sources of noise and reflections inside the vehicle, where in a boat you know exactly where your main noise source is located and what its main frequency components are without having to worry about reflections from being boxed in. The hardest part of this project would be to accurately produce the noise cancelling signal. We would have to do a lot of research on how different listener positions would be affected and what can be done to lower noise levels for everyone on the boat. However, I feel that it is an interesting possibility and one that would certainly be cause to cheer in the boating world. Proposal 2: Imagine the clapper, only instead of having to clap your hands to operate the device you simply have to voice your commands. The trend has gained traction in the automotive industry (look at Ford's Sync system which can control everything from reading you a text message to adjusting climate controls), cell phone industry (Siri), and several other large industries. It is about time that voice commands found a place in our living quarters. For the time frame given to accomplish the project, one realistic possibility is to design a wall light switch with a small built in microphone constantly listening for you to announce "light on". I think that that there is potentially a large market for reliable technological conveniences inside modern houses. This project could be a simple example to showcase that possibility. James Tyler Our development platform would certainly support this project. However, since the device would always be powered when installed onto a light switch, we should strive for low power consumption. DSP would be necessary to implement algorithms on the audio signals from the microphone to decipher what words are being spoken. Again, very light on resources would be the key here since people would be unlikely to pay very much for it. The cost of this project would be very reasonable, requiring few parts outside of our development kit. Several different light switches to modify would need to be purchased, along with a small microphone. The hardest part of this project would be correctly deciphering voice commands. If it was not done well, the light could turn on and off when two people are normally conversing within range of the microphone. On the opposite side of that, it would also be a poor design if you had to yell so loud that the neighbors could hear you to get the system to respond. Or if you spoke perfectly clearly and enunciated correctly and the lights still didn't turn on. However, I think it is reasonable and could potentially interest some people in the end. Baiyu Wang Shots Fired Detection and Information Relay Overview: Criminal, terrorist, and military actions involving firearms are of increasing concern to police, soldiers, and the public. Our project is to look for a system which could detect the sound wave of the gunshot in order to localize snipers and even classify or identify the gun type. Briefly, we need some sensors and a server to realize our idea. I read a paper and it seems we could only use two sensors to accomplish this. However, it relies on very ideal situation and unfortunately could not be brought to practical application. Thus we may use numbers of sensors. Proposed project effort: To achieve our goal, we need some sensors like microphones to catch the sound wave made by guns and bullets. And our work are mainly based on collection of these data. The first basic question is how we distinguish gunshots with other urban noise like traffic or building work. To do this, we need pay our attention to the shape of the sound wave. The gunshots sound wave always has large amplitude at some certain time with very narrow duration which is typically made by muzzle blast, supersonic projectile and reflections from ground and surrounding objects. We could also bring this question into frequency domain to look for answers. The second question is how we could localize the gunshots. For that, we need place couples of sensors in a certain area like a park or a street block. The distance between each sensor at seperate locations should be enough to ensure significant time delay when catching the sound wave. Then we could use relevant algorithm with information of both locations of sensors and time delay of sound wave to localize the gunshots. Moreover, all the data captured by sensors would be transmitted to a central command server to be analysed. So we also need some emitters and receiver. After reaching the basic project requests, we could try to increase the accuracy of detection and improve our system on the aspects of power cost and detection range. We could even do more to make this system clever enough to provide some information on guns type. Automated Garage Parking Overview: For most drivers, parking is relevantly more difficult than just driving on the road, especially in a crowded parking lot or because the parking space is too narrow or small. If a driver could not park the vehicle smoothly, he may cause a traffic jam. Thus a automatic parking system which could help the driver to finish this annoying task is really an exciting project. For this certain EECS452 project, we are asked to design a automated garage parking system which could park the car automatically starting from one end of a road after the driver choose a parking location. At the same time, this system should be able to prevent accident when parking. Proposed project effort: Since the model should include a small-scale functional vehicle, we not only need some DSP knowledge but also some machanism and control knowledge. Therefore we may need quite a lot reading during the project. In the aspect of hardware, we need some emitters and sensors placed around the vehicle. This is to detect surrounding objects and we could use the data collected to calculate the distance from the vehicle to nearby objects. This has two meaning. One is that we could localize where the vehicle is, what the angle between the vehicle and the road or the garage gate is. So that we could make right commands to lead the vehicle. The second is we could prevent our vehicle form accident. We also need some hardware to control the vehicle including a friendly interface to drivers for them to make their ideal options. Pre-project Ideas (PPI) 1. Voice Controlled and Face Recognition Machine Gun a. Overview: Nowadays, it costs soldiers lives in the battle because they need to use and control their guns in the battle fields. This project will build a machine gun which can fire at different directions in the 180° range. When people say “fire!”, the gun will fire. When people say “rotate!”, the gun will rotate in the range of 180°. And when people say “stop!”, it will stop firing and rotating. If there is a human face right in front of it, it will automatically stop rotating and fire at the people that detected. b. Proposed project effort: At first, we need to buy a Nerf gun and locate it on a servo that can rotate 180°. Then, we need to focus on the human voice recognition part. We can use a microphone to capture voice. Through an ADC converter on the DSP chip, we can get the digital signal of the three words—“fire”, “stop” and “rotate”. Then, if the system detects these three digital signal patterns, we can either shut down all the signals to stop the gun or send the signals to the FPGA board to either set one pin to be high to fire the gun or send PWM to servo to rotate it. We can use a relay to bypass the trigger of gun to fire it. And the system should ignore all other voices. If detecting human voice is too hard, I think we can simply use pitch detection. For example, we use a flute and make sound out of it. If it is one note, just rotate the gun. And if it is another, just fire the gun. The last part will be human face recognition. After the sound control, it will be the image control. We can add a digital camera on the gun. The camera should send the video image it has taken to the DSP chip. Then, we can do image processing using the digital signal. If there is noise, we can first use median filtering to get the correct image and then check whether it meets the characteristics of a human face. If it matches the characteristics, just do the same thing as above. Send signal to FPGA board to set an output pin to be high to fire and also send signal to the board to shut the servo power supply down to stop rotating. 2. Smart Car a. Overview: Build a car that has two modes. In the first mode, the car can turn right on green sign, turn left on blue sign and stop on red sign. If there are no signs and the route is clear, it will go straight forward. In the second mode, the car can also follow infrared lasers. We can use the laser to control it. It will go in the direction the laser points to. It can turn left if the laser points to the left side of the car, and right otherwise. If the car cannot detect the laser, it will stop. b. Proposed project effort: In the first step, the car should follow the instructions from different colors of signs. The camera on the car should take pictures when the car comes close to an obstacle, for example, a sign board. Then, the digital images should be sent to the DSP chip. After image processing, we should figure out the color of the sign. If it is in the range of green (for there may be different green colors), we send a PWM signal with certain pulse width to the servo to control the car to rotate to the right. Similarly, for a blue sign, we let the servo rotate to the left and for a red sign, we just shut down the motor of car. Then we come to second step—the laser following. First, we should know the wavelength of our infrared laser. Then, the camera on the car captures images of surroundings. If there is an infrared wave whose wavelength is within the range of our laser, then it is the right one to follow. Then, on the whole image the camera has taken, we need to do a filtering to find out the position of infrared wave. If it is on the left part of the image, we should do the same thing as above to let the car turn left. If it is on right, the car turns right. But if there is no infrared wave found, then we should stop the car. And at last, if we can finish these two steps early, maybe we can also add voice control to the car. Just like the first project—voice controlled gun, we can detect human voice—“left”, “right”, “stop”, and “go”. We can do the same thing like in the voice control part of the machine gun project, and this will be the third mode of the car. Portable handwritten file to digital file converter Overview: With the revolution of cloud computing, it became easier than ever to access to electronic documents from any digital device. People tend to store digital copies of their files on the cloud, which provides a more reliable and accessible solution for retrieving the files needed. In order to store handwritten files on the cloud, we need to convert them to digital files. Using a scanner or camera can easily do the conversion after we finished the file. However, we need an application can do these conversions in real time while people are writing. This is to be an attachment that can easily work with the pen we used everyday. Moreover, this device can be used for communication purposes as well. For example, a teacher can remotely work through a math problem by hand, while students can watch the step-by-step solutions online and interact with the teacher in real time. Proposed project effort: This is a challenging project. The project is based on the idea that each symbol we write has a unique representation in terms of the movements of a pen. It requires knowledge about how to measure movement of a pen by using Gyro sensor. The Gyro sensors are sold by SparkFun such as: https://www.sparkfun.com/products/9421 Initially, we need to build a pattern bank for each pattern we want to recognize. It may be essential to let each user to calibrate the device for the best results.To get the pattern, we need to sample the continuous signal out from the Gyro sensor and extract the pattern of the movement we need. Likely, a pressure sensor would be helpful for detecting whether the pen is in contact with paper, and the result from pressure sensor can work with the result from Gyro sensor to get a better understanding of the whether it’s one symbol or multiple symbols. By comparing the pattern collected to the pattern bank, we can conclude which symbol most likely correspond to this pattern. Voice controlled alarm Overview: For college students, it’s essential to get up on time and attend to classes. However, it’s really easy for students who use the most commonly used alarm clocks, like cell phones and analog alarm clocks, to sleep over in the morning. The widely used devices don’t seem to be enough to make sure you get up, simply because it is so easy to turn it off unconsciously. A advanced programmable alarm clock is needed to resolve the problem. Everyday it alarms at the desired time and can be turn off only by specific voice commands(songs, word combinations). The commands can be user defined or program generated, which requires the user to actually make some efforts to interact with the alarm to interpret the right command. Proposed project effort: The audio signal analysis would implement MFCC (MelFrequency Cepstrum Coefficients) analysis on segmented audio waveform and making decisions on which command is being said based on the work of Hidden Markov Model (HMM). A couple years ago, voice controlled alarm clocks was introduced to the market, but it clock only allows several simple command like setting time and turn on/off the alarm clock: http://www.amazon.com/Moshi-Voice-Interactive-Talking-Alarm/dp/B001MKKHFK The device we want to build should base on the previous model but with more features. When the alarm is on, it continuously receives and samples the audio signal until it finds a matching waveform. Alternatively, the program can generate random word combinations on displays and you need to follow the instructions and speak out the right word to turn off the alarm(A simple sudoku game should be enough). Whitney Witherspoon Harris Information Relay Overview: The Harris Inc. Information Relay project proposal Picture this: A shot is fired in an urban area and only moments later, it has been detected by the city’s gunshot detection system. Immediately information regarding the event has been relayed to a central source. In no time, authorities are able to report to the scene and find the shooter. A successful gunshot detection system should utilize a microphone to detect a gunshot and a method to transmit information to the central command center. It is important for this system to be able to differentiate between common city sounds and shots being fired. Proposed Project effort: Over all there are many different aspects that must be incorporated to make a complete system. There will need to be an array of microphones set at different locations, with GPS coordinates for best detection. The DSP concepts that must be adapted are A/D convertors to capture the sounds. There will be need for filtering, and frequency detection and analysis and comparison of sounds detected. There are generally 3 characteristics that help to separate gunfire from other similar sounds, they can be found in the link below. After this detecting we will have to perform a quick analysis and comparison of the sound. Based on a certain percentage of certainty that gunfire was heard, a digital signal would then be relayed to the dispatch command with the location of the microphone that detected the sound. This requires all of the microphones and the data they collect to be in the same network. http://en.wikipedia.org/wiki/Gunfire_locator Whitney Witherspoon The Watch that Listens/Talks to You Overview Many times I have looked down at my watch and it can be extremely cumbersome to read the analog hands. In other cases, where a person may have a tough time with their vision it can be a very frustrating time straining to see their watch. My idea is for a listening and speaking watch. With the device you will be able to speak to the watch, without having to press a button for it to listen. Go ahead ask, “What time is it?” and the watch will respond with the time. Ask the watch to begin the stop watch or stop it and the watch will listen to you. Proposed Project effort: This device would implement A/D converter and D/A converters. There would need to be a real-time continuous microphone that would need to have a filter when detecting the command being sent from the user to process the information. The will also need to be an initial voice recognition system that sets the watch to be matched with the user. The command would then send a digital signal for the for the process to be performed and convert the digital component to analog to the speaker to communicate with the user. Pre-project Ideas 1 Automatic Table Tennis Ball Pick Up Device 1.1 Project Overview: If you have watched a table tennis game, you may find an interesting phenomenon, which the time that players spend on picking up the table tennis balls is almost the same as the time they are playing. Picking up balls is indeed quite time-consuming. It wastes players’ energy and sometimes can be very frustrating. Picture this: When table tennis players finish a round, they don’t need to pick up the balls themselves. Instead, they can just take the balls from the box besides the table and an automatic table tennis ball pick up device will search the ball automatically, pick it up and put the balls back to the box. This project is relevant to the Harris project concept of object localization and tracking. The idea is to track the object mainly by analyze the sound through the methods learnt in the DSP courses. And it should be a low cost device since the peripheral devices requirements are not high and the analysis of sound should be completed in a single FPGA. The project is also quite flexible and adjustable one. The main part of the project is the analysis of the sound and can easily be adjusted and applied to other projects related to the object localization and tracking, for example, other ball games or a gunshot fire detection system mentioned by the Harris Engineers. 1.2 Proposed Project Effort: The project will be mainly focused on how to localize the table tennis ball according to the sound. The difficulty should be proper since I think the environment that people usually play a table tennis ball game is relatively quiet. And the disturbance will not be too strong. The sound we rely on should be the bouncing sound when a ball hits the ground. And it will be a problem that how to distinguish between the sound that a ball hits ground and the sound that a ball hits the table. At beginning we will measure the frequency and other things in a quiet environment. Then we will step by step add some noises. Filters will be of coursed used as well as other DSP methods. The other part of the project is the mechanical part and control part. After localizing the ball, the device should be able to analyze how to approach the ball and take it with a mechanical arm. Then the device goes back to the box and puts it back. Who might use such? Of course the stadiums! Especially it will be popular in China, a country full of table tennis lovers! 2 Smart Bus Control System 2.1 Project Overview: In many cities around the world, public traffic issue is considered to be a main issue that the cities are eager to solve. Especially in the crowded cities, the efficiency of the public traffic system is a main factor that constrains the city developing. You may encounter the problem yourself: the crowded bus is really annoying and sometimes you may even wait a long time for a bus you can get on! The project will develop a control system that smartly contributes the buses in a district in order to improve the efficiency. The main method is by monitoring the amount of people on every bus and at every bus station. The project is relevant to the Harris project the smart elevator control system. 2.2 Proposed Project Effort: The project will focus on how to recognize the amount of people at a certain spot. The method will be analyzing the sounds at that spot and the images, with the help of other sensors, like pressure sensors. The other part is the communication of the information and an algorithm to contribute the bus. In a short period, the project may not be completed but at least the first part of recognize amount of people should be finished at a primary level. Who might use such? Of course all cities want this fantastic system!