Lisa’s Status Report for Feb 19, 2022

This week, I worked on developing code for the computer vision section of the project – mainly, line detection. Denise and I discussed the intersection between what the computer vision algorithm would output and what the vectorizing code would need in order to vectorize the individual lines. We settled on an implementation that allows the computer vision code to send a list of line endpoints to the vectorizing code that she will develop. I also noticed that my current code for line detection occasionally classified one line as two different lines – one thing I will have to work on next week is fine tuning parameters to ensure that lines don’t get double counted. Part of this lies in the cv2.houghLines() function in my code and the parameters it takes in, but it also will also require further checks in the algorithm. I’ve also worked in the presentation for the design proposal this week. So far, we are on schedule.

Denise’s Status Report for Feb 19, 2022

This week I took a look at several algorithms to reduce the amount of points within a line such as the Douglas–Peucker algorithm, and the Visvalingam–Whyatt algorithm. The Douglas-Peuker algorithm has a faster runtime however the Visvalingam–Whyatt algorithm is more straightforward in terms of complexity, making it a viable back up. I also researched ways to convert an SVG file to an array of points and back such that the user can send their diagrams as SVG files to display to connected peers, but also be able to modify the primitives on their end which would be easier as an array of points.

I also worked on the use case, use case requirements, solution approach on the slides and mocked up the GUI using Figma. Currently we are on schedule. Next week I will be working with Lisa to finalize our vectorization approach and start writing code to convert files into SVGs. We will also be taking a look into how we can compare frames to subtract the lines drawn in previous frames using a temporal approach.

Team Status Report for Feb 19, 2022

This week a lot of the work done by the team was spent on getting the Design Proposal presentation. Sizable progress was then made on the sockets server for sending the code to various users.

The biggest risk that jeopardizes our project is currently converting the image to uniform lines and polygons within our latency requirement. Currently there are many lines generated by our CV software but in order to improve the usability of our project we need to reduce the lines such that we only have a single line for each connected component that the user drew. This would also make rendering more efficient since the software will not need to process as many lines. We are taking look into using temporal information ie having the user draw a line/polygon 1 by 1 and then hold it up to the camera after each line. We are also looking for algorithms that can simplify the number of points within lines. One backup plan is to take the image as a PNG and convert it to a SVG using potrace or a similar python library.

As of now there have been no changes to the current design of the system. The current schedule has been updated to look like this so that we can slot in some time for leniency.

Ronald got the server working and was able to test sending an image to Denise which works so in the coming week he is going to run more tests to see how long it takes for many different vectors to send and ensure that we are reaching our latency goal for the server.

This is why one of the risks is the server being slower than we would like because we will have to find some other way to send the svg files and not much research has been done into that.

Ronald’s Status Report for Feb 19, 2022

This week I begun the actual programming work on the server and was able to finish it a week ahead of schedule which allows us to slot in some leeway time into the overall project plan. Using sockets and some other python libraries I was able to send jpeg images and svg vectors to myself and while connected to my personal at home wifi I was able to send a jpeg to my roommate. Then I checked if it would work while connected to campus wifi and I was able to send a jpeg to Denise, my teammate.

The project is currently slightly ahead of schedule since the server software was finished quicker than anticipated but there is still the issue of integrating everything together but that will have to come later.

For next week I would like to do some testing on the latency of sending image vectors and would like to get some work started on the GUI for the application that users will use to send the actual images to each

other.

Ronald’s Status Report for Feb 12, 2022

This week I started with some research into python sockets and sharing images through sockets. I have also done some of the initial programming of the sockets software.

I am still on schedule as I have another allotted 2 weeks for finishing the server code although the last week there are some other aspects of the project I also need to work on.

In the next week I hope to have the server code close to being finished  so that we can try testing sending normal images using it and maybe for the following week have it done and ready to send vectors