{"id":19660848,"url":"https://github.com/bendangnuksung/mrcnn_serving_ready","last_synced_at":"2025-09-01T08:07:00.344Z","repository":{"id":44454421,"uuid":"180768539","full_name":"bendangnuksung/mrcnn_serving_ready","owner":"bendangnuksung","description":"🛠 Mask R-CNN Keras to Tensorflow and TFX models + Serving models using TFX GRPC \u0026 RESTAPI","archived":false,"fork":false,"pushed_at":"2020-10-16T17:47:58.000Z","size":162,"stargazers_count":102,"open_issues_count":17,"forks_count":35,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-28T20:46:18.379Z","etag":null,"topics":["grpc","mask-rcnn","rest-api","tensorflow-keras","tensorflow-model","tensorflow-model-server"],"latest_commit_sha":null,"homepage":"https://github.com/matterport/Mask_RCNN","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bendangnuksung.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-04-11T10:24:33.000Z","updated_at":"2025-04-06T16:15:47.000Z","dependencies_parsed_at":"2022-09-09T19:21:00.485Z","dependency_job_id":null,"html_url":"https://github.com/bendangnuksung/mrcnn_serving_ready","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/bendangnuksung/mrcnn_serving_ready","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bendangnuksung%2Fmrcnn_serving_ready","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bendangnuksung%2Fmrcnn_serving_ready/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bendangnuksung%2Fmrcnn_serving_ready/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bendangnuksung%2Fmrcnn_serving_ready/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bendangnuksung","download_url":"https://codeload.github.com/bendangnuksung/mrcnn_serving_ready/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bendangnuksung%2Fmrcnn_serving_ready/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273093258,"owners_count":25044436,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-01T02:00:09.058Z","response_time":120,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["grpc","mask-rcnn","rest-api","tensorflow-keras","tensorflow-model","tensorflow-model-server"],"created_at":"2024-11-11T16:05:35.916Z","updated_at":"2025-09-01T08:07:00.321Z","avatar_url":"https://github.com/bendangnuksung.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"### MRCNN Model conversion\nScript to convert [MatterPort Mask_RCNN](https://github.com/matterport/Mask_RCNN) Keras model to Tensorflow Frozen Graph and Tensorflow Serving Model.  \nPlus inferencing with GRPC or RESTAPI using Tensorflow Model Server. \n\n\n### How to Run\n1. Modify the path variables in 'user_config.py'\n2. Run main.py\n    ```bash\n    python3 main.py\n    ```\n    \n#### For Custom Config class\nIf you have a different config class you can replace the existing config in 'main.py'\n```python\n# main.py\n# Current config load\nconfig = get_config()\n\n# replace it with your config class\nconfig = your_custom_config_class\n\n```\n\n### Inferencing\nFollow once you finish converting it to a `saved_model` using the above code\n\n#### Tensorflow Model Server with GRPC and RESTAPI\n\n1. First run your `saved_model.pb` in Tensorflow Model Server, using:\n    ```bash\n    tensorflow_model_server --port=8500 --rest_api_port=8501 --model_name=mask --model_base_path=/path/to/saved_model/\n    ```\n2. Modify the variables and add your Config Class if needed in `inferencing/saved_model_config.py`. No need to change if the saved_model is the default COCO model.\n3. Then run the `inferencing/saved_model_inference.py` with the image path:\n    ```bash\n    # Set Python Path\n    export PYTHONPATH=$PYTHONPATH:$pwd\n   \n    # Run Inference with GRPC\n    python3 inferencing/saved_model_inference.py -t grpc -p test_image/monalisa.jpg\n   \n   # Run Inference with RESTAPI\n    python3 inferencing/saved_model_inference.py -t restapi -p test_image/monalisa.jpg\n    ```   \n\n### Acknowledgement\nThanks to [@rahulgullan](https://github.com/rahulgullan) for RESTAPI client code.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbendangnuksung%2Fmrcnn_serving_ready","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbendangnuksung%2Fmrcnn_serving_ready","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbendangnuksung%2Fmrcnn_serving_ready/lists"}