{"id":17152212,"url":"https://github.com/zywangzy/mosaic_cpp","last_synced_at":"2025-03-24T12:43:46.410Z","repository":{"id":230325845,"uuid":"94855125","full_name":"zywangzy/Mosaic_cpp","owner":"zywangzy","description":"Side project focused on computer vision.","archived":false,"fork":false,"pushed_at":"2017-11-22T12:06:04.000Z","size":22425,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-01-29T18:08:41.252Z","etag":null,"topics":["computer-vision","image-processing"],"latest_commit_sha":null,"homepage":"","language":"C++","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/zywangzy.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,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2017-06-20T06:00:16.000Z","updated_at":"2017-08-30T01:38:02.000Z","dependencies_parsed_at":"2024-03-29T04:38:22.736Z","dependency_job_id":null,"html_url":"https://github.com/zywangzy/Mosaic_cpp","commit_stats":null,"previous_names":["zywangzy/mosaic_cpp"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zywangzy%2FMosaic_cpp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zywangzy%2FMosaic_cpp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zywangzy%2FMosaic_cpp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zywangzy%2FMosaic_cpp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zywangzy","download_url":"https://codeload.github.com/zywangzy/Mosaic_cpp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245275023,"owners_count":20588883,"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":["computer-vision","image-processing"],"created_at":"2024-10-14T21:43:06.842Z","updated_at":"2025-03-24T12:43:46.385Z","avatar_url":"https://github.com/zywangzy.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Mosaic_cpp\nThis project focuses on build a solution for getting an optimal image scratch replacing result. It segments the original image to numerous small chunks, and then replace each chunk with most similar image in a given library, thus to get a \"Mosaic\" effect.\n\nExample:\nSource image\n![alt text](http://static3.businessinsider.com/image/58586374ca7f0cfd788b4c6c/apple-is-losing-its-focus-again--and-this-time-theres-no-steve-jobs-coming-to-the-rescue.jpg)\nResult image\n\n![alt text](https://github.com/wangzyusc/Mosaic_cpp/blob/master/jobs_mosaic_initial_result.png)\n\nAlgorithm Pipeline:\n1. Generate the color histogram features for all the library images and save them into local files.\n2. Segment the source image into initial small chunks and merge them into larger chunks if possible.\n3. Find the best-match image in library for each chunk in the source images based on color histogram similarity.\n\nProgress:\n1. Used PCA to reduce dimensions for color histogram features to reduce computation workload during finding best-match image for each chunk.\n\nNext steps:\n1. Use more efficient way to search for best-matching image.\n2. Use markup language (e.g. .xml) files to configure the project.\n3. Build API for Python or other script languages.\n\nPersonal note:\nUse the following command to get the number of lines of code:\ngit log --author=\"wangzyusc\" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf \"added lines: %s, removed lines: %s, total lines: %s\\n\", add, subs, loc }' -\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzywangzy%2Fmosaic_cpp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzywangzy%2Fmosaic_cpp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzywangzy%2Fmosaic_cpp/lists"}