Team Status Report for 3/16

Risk Identification and Mitigation Strategies

Primary Risk ConcernOur concern remains the same throughout, however progress has been made since last week. The OCR model has been developed in a very simple way right now, therefore not reaching its 90+ accuracy rate. This should be fixed in the next coming weeks.

Mitigation Measures: Mitigation measures such as different formats for expiration dates have been put into consideration and been developed. Custom data sets to train on the OCR model is also needed for better accuracy.

Project Design Updates

As of the current reporting period, there have been no modifications to the initial design of the project. 

Schedule and Timeline

We are on track with our timeline. 

Jason’s Status Report for 3/16

Accomplishments This Week

This week I was able to develop a simple OCR model that takes in an image input and feeds it through preprocessing, and outputs the resulting expiration date with its confidence score. It also detects the date format if the expiration date is in MM/DD/YYYY or DD/MM/YYYY.

Project Schedule and Progress

I am on schedule, and as I have ample time next week I will dedicate more effort into refining the OCR model.

Goals for the Next Week

I will continue developing the OCR model and improve the accuracy using custom data sets.

Yuma’s Status Report for 3/16

Accomplishments This Week

There were no big accomplishments on my side this week. I was visiting my parents at home as they were in a life-threatening car crash this January. However, I was able to set up an echo server for sending messages between the nodes. The closing condition (closing the connection) is still a bit buggy but the code is pushed to our repository at https://github.com/Yumam20/d3-intellistorage/

Project Schedule and Progress

This visit home was unplanned with respect to the Gantt Chart. If it was, I would’ve bought lottery tickets. This though puts me back a week in terms of schedule. I hope to make this work up this coming week.

Goals for the Next Week
I hope to start writing code to integrate the barcode and scanner modules into the main framework. I hope to also tweak the base design based on the design changes we made during the design review process.

Siyuan’s Status Report for 3/16

Accomplishments This Week

This week, I focused on the software development aspects of the project. The key accomplishments include:

Modification of API Request for Database Compatibility: I undertook the essential task of modifying the API request functionality to ensure compliance with the data format used in our database. This modification is a vital step towards integrating the barcode scanner module software with our existing data management systems. By aligning the format of the data retrieved from the API with that of our database, we facilitate smoother data integration, storage, and retrieval processes.

Implementing More Features to Barcode Software: A significant development achievement this week was adding more useful information to the API request. Now, the software can get the date and time, and the user can select which item is correct if there are many corresponding items to the barcode.

 

Project Schedule and Progress

I am on schedule, and I have catch up what I missed last week.

 

Goals for the Next Week

Next week, the focus will continue to be on the integration of the scanner module software with the broader system. Alongside development, testing of the newly added features will be conducted to ensure their reliability and effectiveness. Based on the testing results, necessary refinements will be made to enhance the software’s performance and user experience.

Team Status Report for 3/9

Risk Identification and Mitigation Strategies

Primary Risk ConcernSince our project did not progress much this week, our primary risk concern for this phase of the project is still being able to identify the expiration date correctly given the input image taken by our camera. There are many concerns regarding the accuracy of the data, as even the slightest error could lead to faults. For now, we will still focus on preprocessing mechanisms, as we have not implemented character recognition yet. 

Mitigation MeasuresDespite the planned preprocessing procedures we mentioned in the last status report, we still need to consider some things about expiration dates. For the input, we should take into consideration what would be the most common format for expiration dates. Although most USA products are in MM/DD/YYYY format, some products from the Asian food market may have YYYY/MM/DD format. This would imply that software would have to be able to distinguish between them.

Project Design Updates

As of the current reporting period, there have been no modifications to the initial design of the project. 

Schedule and Timeline

We are on track with our timeline. Although we did not expect writing the design review report would take a week, we still have enough time for integration and testing. 

Additional Questions: 

A was written by Yuma Matsuoka, B was written by Jaesup Kim and C was written by Siyuan Li.

Part A

Our project is helping bridge the gap between those who do not have technical knowledge and those who do. In our society, people who have technical knowledge (i.e. students, young people) are able to utilize technologies such as the iPhone, applications, etc to make life easier. For example, those who are young are more likely to use mobile check-in for a flight than those who are old, who are likely to go to the airport early to print out physical passes. Our technology will not discriminate based on technical knowledge, as the entry to operation will be very low. The product will take less than 5 minutes to set up, and will be very intuitive to use. Furthermore, it will be a hard product, hopefully closing the idea gap that apps present. This hopefully will be a step in lowering the implicit accessibility barrier in using technology to simplify our lives.

Part B

Our project helps people from all cultures. Different cultures have different grocery items and foods, and also storage spaces to keep them fresh. Our scanner is able to work on any environment and any storage space, whether it be a fridge or pantry, or a chilled basement. Our product will count for all of those environmental aspects as well as condition of the items. Even products that come from a foreign origin with no barcode will work as you can manually enter the item.

Part C

Our project directly contributes to lessening the environmental impact associated with the disposal of food. Food waste contributes to a significant portion of methane emissions, a potent greenhouse gas, when it decomposes in landfills. By ensuring that families and individuals are reminded of expiration dates, IntelliStorage helps in making sure that groceries are consumed before they spoil, thereby decreasing the volume of food that ends up in landfills. 

Moreover, our project’s efficient management system encourages users to make more conscious purchasing decisions. By having a better overview of what is already stocked at home, users can avoid overbuying, leading to not only less food waste but also a reduction in the carbon footprint associated with the transportation, and packaging of excess groceries.

 

Jason’s Status Report for 3/9

Accomplishments This Week

For this week, we mainly worked on the design review report as a group. We divided the work, and I wrote from sections 4-6 with risk mitigation as well. I also reviewed the feedback from the faculty and revised our report accordingly. I developed diagrams for the product which depicted the system diagram as a whole as well as the OCR flow.

Project Schedule and Progress

Project is going as scheduled on my end, however as the semester ramps up will have to allocate more time towards projects and exams.

Goals for the Next Week
I am going to continue working on the OCR model, which has been started since last week. I will try to get a working model this week with very simple test cases.

Yuma’s Status Report for 3/9

Accomplishments This Week

The main (biggest) part of this week was the design review report. I was in charge of sections 6-9, but ended up helping and rewriting a lot of the stuff in all the other sections. I also fabricated many diagrams that would be put into this report. I think it was a very insightful experience, as trying to explain design choices led me to question my design, sometimes resulting in design changes. It also helped that our design review presentation received constructive criticism, some of which we took in to our design.

One example of a change in design is the temperature sensor. One feedback we received was about the correlation of temperature and “how fast an item expiration goes.” Although it is out of the 12 week project scope to implement some ML algorithm to detect expiration date changes, we decided to install a temperature sensor to our main module. This way we can at least categorize the storage space to be cool/hot and make ROUGH expiration date changes.

Project Schedule and Progress

I did not expect the design review report to take this long. I also did not want to work over spring break, as I was traveling with friends abroad. Therefore, we are behind schedule. I will also be visiting my parents in Philadelphia this coming week as they are being released from the hospital, though I hope to work asynchronously with my teammates.

Goals for the Next Week
I hope to start writing code to integrate the barcode and scanner modules into the main framework. I hope to also tweak the base design based on the design changes we made during the design review process.

Siyuan’s Status Report for 3/9

Accomplishments This Week

This week, I focused on both the documentation and development aspects of the project. The key accomplishments include:

Completion of Design Review Report: I have completed writing crucial sections of the Design Review Report, which include the Introduction, Use Case Requirements, and Architecture.

Implementation of Information Extraction Function: A significant development achievement this week was the implementation of the function that extracts useful information from the API request. With this functionality, the software now can parse information, such as product name and brand.

 

Project Schedule and Progress

I am slightly behind schedule, but the work for next week is still software development. In this case, things are still manageable.

 

Goals for the Next Week

Next week, the focus will shift towards further development of the barcode module software, building upon the foundational work completed this week. Alongside development, testing of the newly added features will be conducted to ensure their reliability and effectiveness. Based on the testing results, necessary refinements will be made to enhance the software’s performance and user experience.

Team Status Report for 2/24

Risk Identification and Mitigation Strategies

Primary Risk Concern: Our primary risk concern for this phase of the project is being able to identify the expiration date correctly given the input image taken by our camera. We have done optimization for our camera, therefore we are now moving on to the processing phase There are many concerns regarding the accuracy of the date, as even the slightest error could lead to a totally wrong information. Therefore, a lot of preprocessing and postprocessing is required to ensure optimal character recognition. For now, we will focus on preprocessing mechanisms, as we have not implemented the character recognition yet. 

 

Mitigation Measures:

We are planning on implementing these preprocessing measures: 

  1. Resizing image
  2. Contrast enhancement
  3. Color to grayscale adjustment
  4. Contour analysis to filter out non-text regions 

 

Other than the image itself, some things to consider for expiration dates in general:

For the input we should take into consideration what would be most common for expiration dates, which would either be started by “Best by”, or “Use by”. Then the date would be divided by “.”, “/”. It would also be in MM/DD/YYYY format. We would also have to be able to take in only MM/DD inputs as well. This would also imply that software would have to keep track of either or both dates, complicating the database.

Project Design Updates

As of the current reporting period, there have been no modifications to the initial design of the project. 

Schedule and Timeline

We are on track of our timeline. Even if the OCR implementation takes longer than expected, we have ample time for integration and testing during the week after Spring Break. 

Yuma’s Status Report for 2/24

Accomplishments This Week

Firstly, we presented our design review this week. During the Q&A, an interesting alternative for storing data on the central computer & edge servers was proposed — ZFS. I spent some time this week conducting a trade study for this technology versus a vanilla implementation of RAID.

On top of this, I was able to setup the repository for the project and draft the bare-bone code used to register items and communicate between nodes. This code is pushed to the repository. A problem I encountered was formatting the data being sent, but was able to resolve it by performing lossless compression on the class member using the pickle library and unpickle-ing it at the recipient. I would say it was a productive week.

Project Schedule and Progress

Although I was a bit behind schedule last week, I managed to bring it back on schedule this week. I hope to work ahead this week, though I am not sure how much can be done as the design review is also due this week.

Goals for the Next Week

I plan on starting to define an interface between Siyuan and Jason’s portions of the code so that we are on the same page about how barcodes and camera input are being put in as data. I also plan on dedicating a lot of time this week to write and clean up the design review document, as well as review comments that were given on our presentation.