Jason’s Status Report for 4/27

Accomplishments This Week

This week I worked on testing and verifying our design as a whole. Our verification process will mainly focus on accuracy and latency, so that the user interaction will be seemless during the demo. I will continue to work with Yuma and Siyuan for verification over the week. I also worked on the final poster which is due in a couple days.

Project Schedule and Progress

I am on schedule, and my progress is still good.

Goals for the Next Week

Next week, I will work with my team to deliver the final poster, report and prepare the demo.

Jason’s Status Report for 4/20

Accomplishments This Week

This week I was able to integrate the ocr and camera module together so that we can move onto the full integration and validation phase. I also worked on the final presentation.

Project Schedule and Progress
Hopefully I have erased all the roadblocks for the team with the ocr and camera integration done. I will now move onto validating our integrated modules and testing the user interface of the scanner.

Goals for the Next Week
I will now test and validate our combined scanner module physically, and help Yuma with UI development as well as debug any issues that arise during the testing phase.

 

As you’ve designed, implemented and debugged your project, what new tools or new knowledge did you find it necessary to learn to be able to accomplish these tasks? What learning strategies did you use to acquire this new knowledge?

New tools and knowledge that I gained through capstone was learning how to use new libraries such as Tensorflow, tesseract, opencv, and etc. I had to self learn a lot of materials and go through google to get the appropriate datasets and algorithms for OCR as well.

Team Status Report for 4/6

Risk Identification and Mitigation Strategies
Primary Risk Concern: Our primary concern currently is being able to integrate our modules together, especially the camera and the scanner module. This includes not only the coding part, but also physically putting them together. As the scanner will be apart from the rbpi module and connected via wire, we will have to see how we can put them together without making it difficult for our users.

Mitigation Measures:
We are able to tweak our physical design part of the scanner if needed. The wiring part can be extended or shortened if necessary. Other mitigation measures and validation methods will be discussed in Validation section.

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

Validation

For validation, our main aspect is putting the modules all together and seeing if they work as intended at the specs that we want. Specifically, we want to measure how fast our scanner system works, and how accurate the information is, and how easy it would be to fix any mistakes and log them into our system. These metrics will be validated by testing our module in a real life setting. We will setup our scanner module as well as our central module in a room, and try to do a test run of a real life scenario. This includes scanning, logging, and checking information. We will then debug any issues that may arise in the process, such as timing requirements as well as accuracy requirements.

Schedule and Timeline
We are on schedule, and hope to be done integrating by next week. We will dedicate the rest of the time on testing and validating our module.

Jason’s Status Report for 4/6

Accomplishments This Week

This week I started integrating the OCR model, camera function, and pipeline to the rest of the modules. This took tweaking some of the code to properly function as intended. Also, the new camera arrived with the specs that we wanted and has been tested to be better than all of our previous cameras.

Project Schedule and Progress
We will follow our revised schedule which will keep us busy for the next few weeks, but manageable at the same time. I will talk about plans about verification in the next step.

Verification

For my individual verification, I have divided into 3 parts. 1 is to verify that my pipeline is sending and receiving all of the components to the central module in a timely manner. This will be done by running test cases and timing the process on the scanner module. I have mitigated potential risks by saving the data into memory instead of disk, so that it can reduce latency. 2 is to test the image acquisition process with the barcode scanning. I need to make sure nothing hinders both processes running at the same time, and make sure the images are what we want. This will be done by hand taking photos at a real setting with real products with expiration dates, and see if barcode scanning works as well. Last would be verifying that the OCR model works as planned with the rbpi, and that the model is producing the expected results. This will also be done by testing with real inputs at a real scenario.

Goals for the Next Week
I will continue to integrate the modules together, and verify that my submodule are working with the integrated module.

Jason’s Status Report for 3/30

Accomplishments This Week

This week I finished the camera pipeline and worked with the new expiration date database in order to achieve the 90% accuracy model. A new camera was ordered that would possibly get better results, as we figured a more close range, autofocus camera would be fit. The integration of the camera will not take any more time, as the code has already been written. Importantly, I have totally revamped the OCR model which was a lot of work but would guaranteed better results if completed.

Project Schedule and Progress
Our schedule has been revised in order to keep up with all of the updates of the project. This includes my expiration date algorithm, which took quite more time than anticipated due to the lack of available datasets in the web and infrastructure.

Goals for the Next Week
I am hoping that I will be able to train the model with the given dataset before the Interim Demo, and showcase the handmade expiration date OCR model. After that, I will move on from the model itself, and work with Yuma and Siyuan on integrating the camera module with the rest of the module.

Jason’s Status Report for 3/23

Accomplishments This Week

This week I was able to further improve on the OCR model and was able to test it out locally on some example expiration dates. It now detects various formats of dates, with a 80%+ accuracy. I also worked with Siyuan and Yuma to get the camera take pictures and send them to the OCR engine. I will work on making the interface and flow of the OCR more smoothly.

Project Schedule and Progress
Progress is being made, and OCR has been implemented. Now we need the camera to take the photos to extract the expiration dates and save them to the database.

Goals for the Next Week
My goal is to get the pipeline working for image acquisition and processing by this week, and with the OCR giving promising results I am confident that I will achieve by the deadline.

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.

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.

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.