Making progress on adding a map
Browse files- app.py +13 -5
- interpretter_notes.py +18 -0
- understand.py +1 -1
    	
        app.py
    CHANGED
    
    | @@ -9,7 +9,7 @@ import cv2 as cv | |
| 9 | 
             
            import numpy as np
         | 
| 10 |  | 
| 11 | 
             
            from transformers import DetrImageProcessor, DetrForSegmentation, MaskFormerImageProcessor, MaskFormerForInstanceSegmentation
         | 
| 12 | 
            -
            from transformers. | 
| 13 |  | 
| 14 |  | 
| 15 |  | 
| @@ -95,9 +95,17 @@ def segment_images(model_name,url_input,image_input,threshold): | |
| 95 | 
             
                    for r in results["segments_info"]:
         | 
| 96 | 
             
                        contour_list, hierarchy = contour_map(results["segmentation"], r["id"])
         | 
| 97 | 
             
                        label_name = model.config.id2label[r["label_id"]]
         | 
| 98 | 
            -
                        return_string += f"ID: {r['id']} | 
| 99 |  | 
| 100 | 
            -
                     | 
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
| 101 |  | 
| 102 | 
             
                    pass
         | 
| 103 | 
             
                else:
         | 
| @@ -115,8 +123,8 @@ title = """<h1 id="title">Image Segmentation with Various Models</h1>""" | |
| 115 | 
             
            description = """
         | 
| 116 | 
             
            Links to HuggingFace Models:
         | 
| 117 |  | 
| 118 | 
            -
            - [facebook/detr-resnet-50-panoptic](https://huggingface.co/facebook/detr-resnet-50-panoptic) | 
| 119 | 
            -
            - [facebook/detr-resnet-101-panoptic](https://huggingface.co/facebook/detr-resnet-101-panoptic)
         | 
| 120 | 
             
            - [facebook/maskformer-swin-large-coco](https://huggingface.co/facebook/maskformer-swin-large-coco)
         | 
| 121 | 
             
            """
         | 
| 122 |  | 
|  | |
| 9 | 
             
            import numpy as np
         | 
| 10 |  | 
| 11 | 
             
            from transformers import DetrImageProcessor, DetrForSegmentation, MaskFormerImageProcessor, MaskFormerForInstanceSegmentation
         | 
| 12 | 
            +
            from transformers.image_transforms import id_to_rgb
         | 
| 13 |  | 
| 14 |  | 
| 15 |  | 
|  | |
| 95 | 
             
                    for r in results["segments_info"]:
         | 
| 96 | 
             
                        contour_list, hierarchy = contour_map(results["segmentation"], r["id"])
         | 
| 97 | 
             
                        label_name = model.config.id2label[r["label_id"]]
         | 
| 98 | 
            +
                        return_string += f"ID: {r['id']}\t Contour Count: {len(contour_list)}\t Score: {r['score']}\t Label Name: {label_name},\n"
         | 
| 99 |  | 
| 100 | 
            +
                    r_shape = results["segmentation"].shape
         | 
| 101 | 
            +
                    new_image = np.zeros((r[0], r[1], 3), dtype=np.uint8)
         | 
| 102 | 
            +
                    new_image[:, :, 0] = results["segmentation"].numpy()[:, :]
         | 
| 103 | 
            +
                    new_image[:, :, 1] = (new_image[:, :, 0] * 2) %256
         | 
| 104 | 
            +
                    new_image[:, :, 2] = (new_image[:, :, 0] * 3) %256
         | 
| 105 | 
            +
             | 
| 106 | 
            +
                    new_image = Image.fromarray(new_image)
         | 
| 107 | 
            +
             | 
| 108 | 
            +
                    return new_image, return_string
         | 
| 109 |  | 
| 110 | 
             
                    pass
         | 
| 111 | 
             
                else:
         | 
|  | |
| 123 | 
             
            description = """
         | 
| 124 | 
             
            Links to HuggingFace Models:
         | 
| 125 |  | 
| 126 | 
            +
            - [facebook/detr-resnet-50-panoptic](https://huggingface.co/facebook/detr-resnet-50-panoptic)   (Not implemented YET)
         | 
| 127 | 
            +
            - [facebook/detr-resnet-101-panoptic](https://huggingface.co/facebook/detr-resnet-101-panoptic) (Not implemented YET)
         | 
| 128 | 
             
            - [facebook/maskformer-swin-large-coco](https://huggingface.co/facebook/maskformer-swin-large-coco)
         | 
| 129 | 
             
            """
         | 
| 130 |  | 
    	
        interpretter_notes.py
    CHANGED
    
    | @@ -154,4 +154,22 @@ def quick_function(id_number): | |
| 154 | 
             
            ...     print(f'{model.config.id2label[results["segments_info"][id_number-1]["label_id"]]}, {results["segments_info"][id_number -1]["score"]}, Contour Count: {len(c)}')
         | 
| 155 | 
             
            ...     show_mask_for_number_over_image(results["segmentation"],id_number, TEST_IMAGE)
         | 
| 156 | 
             
            ... 
         | 
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
| 157 | 
             
            """
         | 
|  | |
| 154 | 
             
            ...     print(f'{model.config.id2label[results["segments_info"][id_number-1]["label_id"]]}, {results["segments_info"][id_number -1]["score"]}, Contour Count: {len(c)}')
         | 
| 155 | 
             
            ...     show_mask_for_number_over_image(results["segmentation"],id_number, TEST_IMAGE)
         | 
| 156 | 
             
            ... 
         | 
| 157 | 
            +
            """
         | 
| 158 | 
            +
             | 
| 159 | 
            +
            """
         | 
| 160 | 
            +
            >>> m = results["segmentation"].cpu().numpy()
         | 
| 161 | 
            +
            >>> new_dim = (m[0], m[1], 3)
         | 
| 162 | 
            +
            >>> new_dim
         | 
| 163 | 
            +
            (array([43, 43, 43, ..., 21, 21, 21], dtype=int32), array([43, 43, 43, ..., 21, 21, 21], dtype=int32), 3)
         | 
| 164 | 
            +
            >>> new_dim = (m.shape[0], m.shape[1], 3)
         | 
| 165 | 
            +
            >>> all_z = np.zeros(new_dim, dtype=np.uint8)
         | 
| 166 | 
            +
             | 
| 167 | 
            +
            >>> z = np.zeros((m.shape[0], m.shape[1], 3), dtype=np.uint8)
         | 
| 168 | 
            +
            >>> z[:, :, 0] = m[:, :]
         | 
| 169 | 
            +
            >>> z[0,0]
         | 
| 170 | 
            +
            array([43,  0,  0], dtype=uint8)
         | 
| 171 | 
            +
            >>> z[0, 0]
         | 
| 172 | 
            +
            array([43,  0,  0], dtype=uint8)
         | 
| 173 | 
            +
            >>> m[0, 0]
         | 
| 174 | 
            +
            43
         | 
| 175 | 
             
            """
         | 
    	
        understand.py
    CHANGED
    
    | @@ -8,7 +8,7 @@ import cv2 as cv | |
| 8 |  | 
| 9 | 
             
            from transformers import DetrImageProcessor, DetrForSegmentation, MaskFormerImageProcessor, MaskFormerForInstanceSegmentation
         | 
| 10 | 
             
            # from transformers.models.detr.feature_extraction_detr import rgb_to_id
         | 
| 11 | 
            -
            from transformers.image_transforms import rgb_to_id
         | 
| 12 |  | 
| 13 | 
             
            TEST_IMAGE = Image.open(r"images/9999999_00783_d_0000358.jpg")
         | 
| 14 | 
             
            MODEL_NAME_DETR = "facebook/detr-resnet-50-panoptic"
         | 
|  | |
| 8 |  | 
| 9 | 
             
            from transformers import DetrImageProcessor, DetrForSegmentation, MaskFormerImageProcessor, MaskFormerForInstanceSegmentation
         | 
| 10 | 
             
            # from transformers.models.detr.feature_extraction_detr import rgb_to_id
         | 
| 11 | 
            +
            from transformers.image_transforms import rgb_to_id, id_to_rgb
         | 
| 12 |  | 
| 13 | 
             
            TEST_IMAGE = Image.open(r"images/9999999_00783_d_0000358.jpg")
         | 
| 14 | 
             
            MODEL_NAME_DETR = "facebook/detr-resnet-50-panoptic"
         |