Weekly Update 10/08 – 10/14

What we did as a team

  • Brainstormed on several questions raised by the TAs
    1. How does the system detect curbs?
      • We have come up with 2 potential solutions:
        • Using CV to detect curbs from the images obtained from the rear camera
        • Using ultrasonic sensors angled towards the ground to detect sudden jump in the readings
    2. How does the system determine the current angle of the steering wheel?
      • Attach a gyroscope to the steering wheel
    3. How do we quantitatively measure the effectiveness of our parking algorithm?
      • We plan to use 3 main criteria to measure the usefulness of our parking instruction
        1. Whether the instruction allows the driver to park in the allocated parking spot within 5 reverses (stretch goal being 3 reverses according to the PA driver’s exam manual)
        2. If the instruction is correct according to common practices. For instance, if the back of the right side of the car is too close to the curb, the algorithm should ask the driver to pull forward to the right or reverse to the left (determined by the available spaces around the car).
        3. After the car is being parked according to the instruction, we measure the distance from 4 sides of the car to the 4 sides of the allocated parking space and the angle at which the side of the car forms with the side curb. The more equal the distance from front and back, and left and right, and the closer the car is parallel to the curb, the more effective our algorithm is.
  • Worked on design presentation and design review report

 

Hubert

  • Configured WIFI and ethernet based MJPEG (uncompressed picture stream) video streaming and proved the (in)feasibility of streaming raw video.
  • Configured WIFI streaming of compressed video stream.
    • Installed and debugged gstreamer-1.0 based camera video h264 processing pipelines.
    • Installed RTSP based video streaming server (gst-rtsp-server) and managed to stream compressed h264 video with a latency of less than 1 second (to RTSP android player app).
  • Started integrating the functions we have previously drafted (graph-plotting function, client side socket functions and video streaming) with Parkr Android App
    • Adapt previously Vanilla Java JApplet based plotting library implementation to android 2d graphics
    • Embed video streaming video in android app front page
    • Integrate previous socket based server-client code to android environment.

 

Zilei

  • Worked extensively on refining the design review document
  • Pieced all the conclusions we have arrived at during the discussion into concrete diagrams and design documentation
  • Refined path prediction algorithm by dividing the algorithm into smaller and more specific submodules and produced the following diagram
  • RefinedĀ  and updated instruction generation flow based on the results of our discussion and produced a detailed flowchart

  • Generated communication diagram to better organize the structure of the program which allows us to better explain and track the communication between different modules of the system

Yuqing

  • Connected 4 ultrasonic sensors to Arduino
  • Used Arduino’s NewPing module to implement distance detection for sensors
  • Used NewPing’s median function to obtain the median of every 5 readings from each sensor ( this gave us much more stable and accurate readings than using RPi)
  • Experimented with different placement of ultrasonic sensors and noticed that the effect of interference between sensors are not as great as it was with Raspberry Pi
  • Set up connection between Arduino and RPi so that Arduino can send all readings to RPi as a comma separated string at fixed intervals
  • Updated server side socket python script based on the changes made
  • Assisted in refining the design review document
  • Updated blog post

Leave a Reply

Your email address will not be published. Required fields are marked *