{"id":17274004,"url":"https://github.com/yonv1943/unsupervised-segmentation","last_synced_at":"2025-10-15T09:36:05.467Z","repository":{"id":44440232,"uuid":"192679536","full_name":"Yonv1943/Unsupervised-Segmentation","owner":"Yonv1943","description":"A high performance impermentation of Unsupervised Image Segmentation by Backpropagation  - Asako Kanezaki","archived":false,"fork":false,"pushed_at":"2019-06-19T09:36:03.000Z","size":4963,"stargazers_count":264,"open_issues_count":3,"forks_count":54,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-03-30T05:11:21.740Z","etag":null,"topics":["unsupervised"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Yonv1943.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-06-19T07:16:13.000Z","updated_at":"2025-03-10T06:49:00.000Z","dependencies_parsed_at":"2022-07-13T08:10:57.935Z","dependency_job_id":null,"html_url":"https://github.com/Yonv1943/Unsupervised-Segmentation","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/Yonv1943%2FUnsupervised-Segmentation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Yonv1943%2FUnsupervised-Segmentation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Yonv1943%2FUnsupervised-Segmentation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Yonv1943%2FUnsupervised-Segmentation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Yonv1943","download_url":"https://codeload.github.com/Yonv1943/Unsupervised-Segmentation/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250536467,"owners_count":21446736,"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":["unsupervised"],"created_at":"2024-10-15T08:52:51.174Z","updated_at":"2025-10-15T09:36:05.367Z","avatar_url":"https://github.com/Yonv1943.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Unsupervised-Segmentation\n### An implementation of **Unsupervised Image Segmentation by Backpropagation  - Asako Kanezaki 金崎朝子** （東京大学）ICASSP. 2018. \n### **Faster and more elegant than origin version. Speed up, 30s(origin) --\u003e 5s(modify)**\n\n![](https://github.com/Yonv1943/Unsupervised-Segmentation/blob/master/readme_image/ICASSP2018_modify.png \"modify_title\")\n\n\nPaper: https://kanezaki.github.io/pytorch-unsupervised-segmentation/ICASSP2018_kanezaki.pdf\n\nOriginal version Github: https://github.com/kanezaki/pytorch-unsupervised-segmentation\n\nAn Interpretation of this algorithm: https://zhuanlan.zhihu.com/p/68528056 (Warning: Simplified Chinese)\n\n\n## Requement\n\nNecessary: Python 3, Torch 0.4\n\nUnnecessary: skimage, opencv-python(cv2)\n\n\n\n\n## Getting Started\nTry the high performance code written by me.\n```\npython3 demo_modify.py\n\nclass Args(object):  # You can change the input_image_path ↓\n    input_image_path = 'image/woof.jpg'  # image/coral.jpg image/tiger.jpg\n```\n  \n\nOr you want to try the code written by the original author.\n```\npython3 demo_origin.py \npython3 demo_origin.py --input image/woof.jpg\n```\n  \nRun this demo, and **press WASDQE on the keyboard** to adjust the parameters.\nThe image show in the GUI, and the parameters show in terminal in real time.\nYou could choose **Algorithm felz** or **Algorithm slic** by commenting the code.\n* W,S --\u003e parameter 1\n* A,D --\u003e parameter 2\n* Q,E --\u003e parameter 3\n```\npython3 demo_pre_seg__felz_slic.py\n```\n\n## Preview\nThe iterative process: Save the result when the iter_number == 1,2,4,8,16,32,64,128.\n\n![](https://github.com/Yonv1943/Unsupervised-Segmentation/blob/master/readme_image/coral_128.gif \"coral\")\n\n![](https://github.com/Yonv1943/Unsupervised-Segmentation/blob/master/readme_image/tiger_128.gif \"tiger\")\n\n![](https://github.com/Yonv1943/Unsupervised-Segmentation/blob/master/readme_image/woof_128.gif \"woof\")\n  \n\n\nThe different result of **Algorithm felz** or **Algorithm slic** with different parameters.\n\nThe left picture: compactness = 10000\n\nThe right picture: compactness = 1000\n\n![](https://github.com/Yonv1943/Unsupervised-Segmentation/blob/master/readme_image/tiger_compactness.jpg \"tiger_compactness\")\n\nThe left picture: **Algorithm slic**\n\nThe right picture:  **Algorithm felz**\n\n![](https://github.com/Yonv1943/Unsupervised-Segmentation/blob/master/readme_image/tiger_felz_slic.jpg \"tiger_felz_slic\")\n\n\n\n\n## Translate 翻译\n\n#### If you can understand English, then I know you can understand this line of words (and you see this line on GitHub.)\n#### 如果你可以看得懂中文，那么我对这个算法的分析写在知乎上了（或者你就是从知乎过来的）\n  \n  \n#### An implementation of **Unsupervised Image Segmentation by Backpropagation**\n#### 无监督图片语义分割，复现并魔改Github上的项目 https://zhuanlan.zhihu.com/p/68528056\n\n\n#### In my opinion, this algorithm is well suited for unsupervised segmentation of satellite images, because satellite images have no directionality. It is suitable for this algorithm with a priori assumption. (Priori Assumptions: In general, the regions with the same semantic information on the satellite images tend to occurs in a continuous area)\n#### 这个算法很适合做 卫星图片的无监督语义分割任务，因为卫星地图没有方向性，并且地图上带有相同语义信息的区域往往是出现在一起的（符合先验假设）。很适合这种带有这种的先验假设算法。","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyonv1943%2Funsupervised-segmentation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyonv1943%2Funsupervised-segmentation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyonv1943%2Funsupervised-segmentation/lists"}