{"id":182,"date":"2022-03-26T15:00:00","date_gmt":"2022-03-26T19:00:00","guid":{"rendered":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/?p=182"},"modified":"2022-03-26T14:46:39","modified_gmt":"2022-03-26T18:46:39","slug":"samuels-status-report-26-mar-22","status":"publish","type":"post","link":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/2022\/03\/26\/samuels-status-report-26-mar-22\/","title":{"rendered":"Samuel\u2019s Status Report \u2013 26 Mar 22"},"content":{"rendered":"<p>During last week&#8217;s status report, I mentioned how we needed to find a dataset which exposed the network to a wider variety of fruit.<\/p>\n<blockquote class=\"wp-embedded-content\" data-secret=\"oVZf4skxf3\"><p><a href=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/2022\/03\/19\/samuels-status-report-19-mar-22\/\">Samuel&#8217;s Status Report &#8211; 19 Mar 22<\/a><\/p><\/blockquote>\n<p><iframe class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" src=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/2022\/03\/19\/samuels-status-report-19-mar-22\/embed\/#?secret=oVZf4skxf3\" data-secret=\"oVZf4skxf3\" width=\"525\" height=\"296\" title=\"&#8220;Samuel&#8217;s Status Report &#8211; 19 Mar 22&#8221; &#8212; Team B3: FreshEyes\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe><\/p>\n<p>This week, was a relatively productive one: I managed to train the network on the &#8220;silvertray&#8221; dataset (https:\/\/www.kaggle.com\/datasets\/chrisfilo\/fruit-recognition) which produced relatively robust results on test data that the network had never seen before (a green label indicates accurate detection; here we had 100% accuracy on test data).<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-185\" src=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-22_12-40-20.jpg\" alt=\"\" width=\"483\" height=\"379\" srcset=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-22_12-40-20.jpg 598w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-22_12-40-20-300x235.jpg 300w\" sizes=\"(max-width: 483px) 100vw, 483px\" \/><\/p>\n<p>Of course, the test data also involved the same silver trays that the algorithm trained on, so a high accuracy is expected.<\/p>\n<p>I then moved on to making it perform detection using real-world data, on our C++ application with our webcam, and these are results!<\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\" wp-image-186 alignleft\" src=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-44-59.jpg\" alt=\"\" width=\"354\" height=\"354\" srcset=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-44-59.jpg 600w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-44-59-150x150.jpg 150w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-44-59-300x300.jpg 300w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-44-59-100x100.jpg 100w\" sizes=\"(max-width: 354px) 100vw, 354px\" \/> <img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-187\" src=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-45-00.jpg\" alt=\"\" width=\"352\" height=\"352\" srcset=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-45-00.jpg 600w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-45-00-150x150.jpg 150w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-45-00-300x300.jpg 300w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-45-00-100x100.jpg 100w\" sizes=\"(max-width: 352px) 100vw, 352px\" \/> <img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-188\" src=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-45-01.jpg\" alt=\"\" width=\"345\" height=\"345\" srcset=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-45-01.jpg 600w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-45-01-150x150.jpg 150w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-45-01-300x300.jpg 300w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-45-01-100x100.jpg 100w\" sizes=\"(max-width: 345px) 100vw, 345px\" \/> <img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-189\" src=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-48-45.jpg\" alt=\"\" width=\"338\" height=\"338\" srcset=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-48-45.jpg 600w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-48-45-150x150.jpg 150w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-48-45-300x300.jpg 300w, http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-content\/uploads\/sites\/184\/2022\/03\/photo_2022-03-26_13-48-45-100x100.jpg 100w\" sizes=\"(max-width: 338px) 100vw, 338px\" \/><\/p>\n<p>As visible in the images above, the NN is able to detect the fruits accurately on in a real-world situation (including a noisy non-white background WITHOUT segmentation applied). That being said, there are some inaccuracies\/misdetections such as with the orange above despite the frames being very similar. I describe needed improvements later below.<\/p>\n<p>With this, we are currently on track towards a working prototype, although we could probably train the network to handle more classes with self-collected or web-procured data.<\/p>\n<p>Next week, we will begin integration of the various components together, and I will work on several improvements to the current CV algorithm\/setup:<\/p>\n<ol>\n<li>Include a &#8220;change detection&#8221; algorithm that will detect when significant changes appear; this will allow us to tell if a fruit is needing to be scanned.<\/li>\n<li>Normalization of the image before processing; this will help reduce issues with random lighting changes, but might require that the network be retrained<\/li>\n<li>Build the actual rig with a white background and test the algorithm on that<\/li>\n<li>If necessary, change to using a silver tray or silver-colored background similar to the network&#8217;s training set, and\/or collect our own datasets.<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>During last week&#8217;s status report, I mentioned how we needed to find a dataset which exposed the network to a wider variety of fruit. Samuel&#8217;s Status Report &#8211; 19 Mar 22 This week, was a relatively productive one: I managed to train the network on the &#8220;silvertray&#8221; dataset (https:\/\/www.kaggle.com\/datasets\/chrisfilo\/fruit-recognition) which produced relatively robust results on &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/2022\/03\/26\/samuels-status-report-26-mar-22\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Samuel\u2019s Status Report \u2013 26 Mar 22&#8221;<\/span><\/a><\/p>\n","protected":false},"author":535,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[12,5,7],"tags":[],"_links":{"self":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-json\/wp\/v2\/posts\/182"}],"collection":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-json\/wp\/v2\/users\/535"}],"replies":[{"embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-json\/wp\/v2\/comments?post=182"}],"version-history":[{"count":2,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-json\/wp\/v2\/posts\/182\/revisions"}],"predecessor-version":[{"id":190,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-json\/wp\/v2\/posts\/182\/revisions\/190"}],"wp:attachment":[{"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-json\/wp\/v2\/media?parent=182"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-json\/wp\/v2\/categories?post=182"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/course.ece.cmu.edu\/~ece500\/projects\/s22-teamb3\/wp-json\/wp\/v2\/tags?post=182"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}