Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mxgmn/texturesynthesis
Texture synthesis from examples
https://github.com/mxgmn/texturesynthesis
algorithm csharp gamedev machine-learning procedural-generation texture-synthesis
Last synced: about 23 hours ago
JSON representation
Texture synthesis from examples
- Host: GitHub
- URL: https://github.com/mxgmn/texturesynthesis
- Owner: mxgmn
- License: other
- Created: 2016-05-10T20:28:38.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2022-06-01T12:20:32.000Z (over 2 years ago)
- Last Synced: 2025-01-24T19:09:28.017Z (8 days ago)
- Topics: algorithm, csharp, gamedev, machine-learning, procedural-generation, texture-synthesis
- Language: C#
- Homepage:
- Size: 2.66 MB
- Stars: 967
- Watchers: 39
- Forks: 54
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE.md
Awesome Lists containing this project
README
The algorithms are:
1. Full neighbourhood search algorithm of [Scott Draves](http://draves.org/fuse) and [Alexei Efros + Thomas Leung](https://www.eecs.berkeley.edu/Research/Projects/CS/vision/papers/efros-iccv99.pdf) and [Li-Yi Wei + Marc Levoy](https://graphics.stanford.edu/papers/texture-synthesis-sig00/texture.pdf) is probably the simplest texture synthesis algorithm imaginable.
2. K-coherent neighbourhood search of [Michael Ashikhmin](http://www.cs.princeton.edu/courses/archive/fall10/cos526/papers/ashikhmin01a.pdf) and [Xin Tong + Jingdan Zhangz + Ligang Liu + Xi Wangz + Baining Guo + Heung-Yeung Shum](http://research.microsoft.com/pubs/65191/btfsynthesis.pdf) takes computational burden from the synthesis to the analysis part and therefore is better suited for synthesizing large textures.
3. Resynthesis algorithm of [P. F. Harrison](http://logarithmic.net/pfh-files/thesis/dissertation.pdf) is scale-invariant, fast, supports constraints and practically never produces completely unsatisfactory results.Note that my implementations are not completely true to the original papers.
Watch a video demonstration of P. F. Harrison's algorithm on YouTube: [https://www.youtube.com/watch?v=8sUMBMpZNzk](https://www.youtube.com/watch?v=8sUMBMpZNzk).
## How to build
This is a console application that depends only on the standard library. Get [.NET Core](https://dotnet.microsoft.com/download) for Windows, Linux or macOS and run
```
dotnet run --configuration Release TextureSynthesis.csproj
```