{"id":286,"date":"2016-11-19T03:49:04","date_gmt":"2016-11-19T03:49:04","guid":{"rendered":"http:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/?page_id=286"},"modified":"2017-05-11T15:49:38","modified_gmt":"2017-05-11T15:49:38","slug":"perception-sub-system","status":"publish","type":"page","link":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/perception-sub-system\/","title":{"rendered":"Perception sub-system"},"content":{"rendered":"<h1><strong>\u00a0Perception <\/strong><\/h1>\n<h2><strong>\u00a0Perception Pipeline\u00a0<\/strong><\/h2>\n<p><span style=\"font-weight: 400\">The current system implementation of the Perception subsystem is shown in\u00a0the following below.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-391\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-content\/uploads\/sites\/16\/2016\/11\/Perception-Current-Status.png\" alt=\"perception-current-status\" width=\"960\" height=\"720\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-content\/uploads\/sites\/16\/2016\/11\/Perception-Current-Status.png 960w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-content\/uploads\/sites\/16\/2016\/11\/Perception-Current-Status-300x225.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-content\/uploads\/sites\/16\/2016\/11\/Perception-Current-Status-768x576.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-content\/uploads\/sites\/16\/2016\/11\/Perception-Current-Status-285x214.png 285w\" sizes=\"auto, (max-width: 960px) 100vw, 960px\" \/><\/p>\n<p><span style=\"font-weight: 400\">The main vision task was to develop a vision system to localize given items inside the storage system. High precision on item identification and shelf localization was needed for grasping and point cloud segmentation.<\/span><\/p>\n<h2>Item classification using neural network<\/h2>\n<p><span style=\"font-weight: 400\">T<\/span><span style=\"font-weight: 400\">he system uses a FCN Classifier for item identification and localization. FCN proved itself to have a high accuracy in item identification, and provides the benefit of pixel-wise labeling which grants valuable information when dealing with occluded cases. The network was trained using images which contained between 1-20 instances of the known competition items. There is a total of 461 images and 4809 instances of items within those images. The images were hand-labeled using the free online service LabelMe. The dataset was preprocessed from LabelMe polygons to standard PASCAL format, and split into training, validation, and test sets. <\/span><\/p>\n<p><span style=\"font-weight: 400\">At runtime the classifier assigns a label to each pixel in an RGB image.<\/span><\/p>\n<p>Following is a video for the classification result for both neural networks. The white region for FCN results is the pixel wised labeling for the corresponding item. For easier visualization, bounding box was drawn for both FCN and Faster R-CNN. The ground truth for each item is represented by the green bounding box and the predictions are the red bounding boxes.<\/p>\n<p>Some items are still giving false identifications, or no identifications at all, and the networks need to be trained on a larger data sets and re-tested.<\/p>\n<p><a href=\"https:\/\/youtu.be\/D1fs4dDUREk\">https:\/\/youtu.be\/D1fs4dDUREk<\/a><\/p>\n<p><a href=\"https:\/\/youtu.be\/tk1PxSnGGws\">https:\/\/youtu.be\/tk1PxSnGGws<\/a><\/p>\n<h2>Improve vision robustness<\/h2>\n<p><span style=\"font-weight: 400\">Class filtering and diffusive lighting conditions along with shading were applied to increase the item classification accuracy and robustness under varying lighting conditions. During competition every team will have access to the JSON file that indicates what items are where at the beginning of the task. If FCN labels some pixels as items that does not exist in the bin, these labels are overwritten as background labels to eliminate false positives. Additionally, diffusive lighting was added to remove shadow and reduce reflection, and shades were added to remove ambient lighting. <\/span><span style=\"font-weight: 400\">The figure below<\/span><span style=\"font-weight: 400\">\u00a0shows a comparison with and without diffusive lighting. <\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-559\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-content\/uploads\/sites\/16\/2016\/11\/Screen-Shot-2017-05-11-at-11.44.37-AM.png\" alt=\"\" width=\"359\" height=\"137\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-content\/uploads\/sites\/16\/2016\/11\/Screen-Shot-2017-05-11-at-11.44.37-AM.png 1200w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-content\/uploads\/sites\/16\/2016\/11\/Screen-Shot-2017-05-11-at-11.44.37-AM-300x115.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-content\/uploads\/sites\/16\/2016\/11\/Screen-Shot-2017-05-11-at-11.44.37-AM-768x293.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-content\/uploads\/sites\/16\/2016\/11\/Screen-Shot-2017-05-11-at-11.44.37-AM-1024x391.png 1024w\" sizes=\"auto, (max-width: 359px) 100vw, 359px\" \/><\/p>\n<h2>Camera calibration, localization and point cloud calibration<\/h2>\n<p><span style=\"font-weight: 400\">The perception subsystem includes camera calibration, bin localization, and point cloud segmentation capabilities. Asus camera intrinsics (focal length etc) and extrinsics (transformation between depth and RGB cameras) were calibrated using ROS camera calibration packages. AprilTags were used to get the transformation between the camera and the bins, so that a point cloud transformation in the world frame could be obtained. Point clouds were then segmented to remove anything outside of the bin. ICP was used to align a CAD model of the bin with point cloud of the bin. <\/span><span style=\"font-weight: 400\">Figure 9 <\/span><span style=\"font-weight: 400\">shows the point cloud projected into the RVIZ scene before alignment.<\/span><\/p>\n<p><span style=\"font-weight: 400\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-560\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-content\/uploads\/sites\/16\/2016\/11\/Screen-Shot-2017-05-11-at-11.45.10-AM.png\" alt=\"\" width=\"328\" height=\"240\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-content\/uploads\/sites\/16\/2016\/11\/Screen-Shot-2017-05-11-at-11.45.10-AM.png 714w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-content\/uploads\/sites\/16\/2016\/11\/Screen-Shot-2017-05-11-at-11.45.10-AM-300x219.png 300w\" sizes=\"auto, (max-width: 328px) 100vw, 328px\" \/><\/span><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u00a0Perception \u00a0Perception Pipeline\u00a0 The current system implementation of the Perception subsystem is shown in\u00a0the following below. The main vision task was to develop a vision system to localize given items inside the storage system. High precision on item identification and shelf localization was needed for grasping and point cloud segmentation. Item classification using neural network <a href=\"https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/perception-sub-system\/\" rel=\"nofollow\"><span class=\"sr-only\">Read more about Perception sub-system<\/span>[&hellip;]<\/a><\/p>\n","protected":false},"author":60,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-286","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-json\/wp\/v2\/pages\/286","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-json\/wp\/v2\/users\/60"}],"replies":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-json\/wp\/v2\/comments?post=286"}],"version-history":[{"count":9,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-json\/wp\/v2\/pages\/286\/revisions"}],"predecessor-version":[{"id":561,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-json\/wp\/v2\/pages\/286\/revisions\/561"}],"wp:attachment":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teame\/wp-json\/wp\/v2\/media?parent=286"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}