{"id":23021064,"url":"https://github.com/zhoudaxia233/efficientunet","last_synced_at":"2025-08-14T09:32:40.852Z","repository":{"id":34925273,"uuid":"190440137","full_name":"zhoudaxia233/EfficientUnet","owner":"zhoudaxia233","description":"Keras Implementation of Unet with EfficientNet as encoder","archived":false,"fork":false,"pushed_at":"2022-04-26T12:16:50.000Z","size":32,"stargazers_count":47,"open_issues_count":2,"forks_count":25,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-12-02T00:49:28.749Z","etag":null,"topics":["efficientnet","efficientunet","image-segmentation","keras-tensorflow","unet","unet-keras"],"latest_commit_sha":null,"homepage":null,"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/zhoudaxia233.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-06-05T17:36:24.000Z","updated_at":"2024-03-15T07:39:59.000Z","dependencies_parsed_at":"2022-08-08T03:00:30.045Z","dependency_job_id":null,"html_url":"https://github.com/zhoudaxia233/EfficientUnet","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhoudaxia233%2FEfficientUnet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhoudaxia233%2FEfficientUnet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhoudaxia233%2FEfficientUnet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhoudaxia233%2FEfficientUnet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zhoudaxia233","download_url":"https://codeload.github.com/zhoudaxia233/EfficientUnet/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":229815912,"owners_count":18128512,"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","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":["efficientnet","efficientunet","image-segmentation","keras-tensorflow","unet","unet-keras"],"created_at":"2024-12-15T12:16:18.854Z","updated_at":"2024-12-15T12:16:19.431Z","avatar_url":"https://github.com/zhoudaxia233.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EfficientUnet\nKeras Implementation of Unet with [EfficientNet](https://arxiv.org/abs/1905.11946) as encoder\n\n- Unet with EfficientNet encoder\n  - EfficientNet-B0\n  - EfficientNet-B1\n  - EfficientNet-B2\n  - EfficientNet-B3\n  - EfficientNet-B4\n  - EfficientNet-B5\n  - EfficientNet-B6\n  - EfficientNet-B7\n---\n## Requirements\n1. `tensorflow \u003e= 1.13.1`\n2. `Keras \u003e= 2.2.4` (It will automatically be installed when you install `efficientunet`)\n\n---\n## Special Notice\nWhen I built this, `tensorflow 1.13.1` and `keras 2.2.4` are the latest. There was no `TF2.0`. All the functions and the so-called \"best practices\" I used in this project may be obsolete. Anyway, this library still works. But please keep in mind, this is built before the advent of `TF2.0`.\n\n---\n## Installation\nInstall `efficientunet`:\n\n```bash\npip install efficientunet\n```\n\n---\n## Basic Usage\n\n```bash\nfrom efficientunet import *\n\nmodel = get_efficient_unet_b5((224, 224, 3), pretrained=True, block_type='transpose', concat_input=True)\nmodel.summary()\n\n```\n\n---\n## Useful notes\n1. This library assumes `channels_last` !\n2. You cannot specify `None` for `input_shape`, since the `input_shape` is heavily used in the code for inferring\nthe architecture. (*The EfficientUnets are constructed dynamically*)\n3. Since you cannot use `None` for `input_shape`, the image size for training process and for inference process\nhave to be the same.  \nIf you do need to use a different image size for inference, a feasible solution is:\n    1. Save the weights of your well-trained model\n    2. Create a new model with the desired input shape\n    3. Load the weights of your well-trained model into this newly created model\n\n4. Due to some rounding problem in the decoder path (*not a bug, this is a feature* :smirk:), the input shape should be \ndivisible by 32.  \ne.g. 224x224 is a suitable size for input images, but 225x225 is not.\n\n---\n## Potential issues\n- If you are unable to load the model from the saved HDF5 file, please refer to \n[this](https://github.com/keras-team/keras/issues/3867) issue.  \n- Especially [this](https://github.com/keras-team/keras/issues/3867#issuecomment-313336090) comment can be used as a workaround.\n\n---\n## Acknowledgment\n0. Some code snippets of EfficientNet are directly borrowed from [this](https://github.com/mingxingtan/efficientnet) repo.\n1. The links of pretrained weights are borrowed from [this](https://github.com/qubvel/efficientnet) repo.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzhoudaxia233%2Fefficientunet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzhoudaxia233%2Fefficientunet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzhoudaxia233%2Fefficientunet/lists"}