OpenCAS开源推荐
  • Introduction
  • 1. GitBook
  • 2. Guava
  • 3. Easy Machine Learning
  • 4. Deeplearning-biology
  • 5. React
  • 6. chatbot
  • 7. Riot
  • 8. WaveFunctionCollapse
  • 9. Frappé charts
  • 10. Apache Spark
  • 11. vscode
  • 12. chalktalk
  • 13. Scrapy
  • 14. Papers We Love
  • 15. Git Flight Rules
  • 16. DrangonBones
  • 17. Sqlmap
  • 18. Tensorflow
  • 19. RapidMiner
  • 20. The Sleuth Kit
  • 21. Flask
  • 22. Hashtopussy
  • 23. PyTorch
  • 24. KNIME
  • 25. Pytudes
  • 26. geekcomputers
  • 27. IPFS
Powered by GitBook
On this page
  • 标签:
  • 简介:
  • 项目地址:
  • 参考链接:

8. WaveFunctionCollapse

Previous7. RiotNext9. Frappé charts

Last updated 7 years ago

标签:

quantum mechanics c#

简介:

Wave Function Collapse,直译:波函数坍缩,是一个由量子力学理论启发,能够从单个简单输入位图生成复杂位图的程序。如下图,左侧为输入的位图,右侧为不同参数N下生成的位图:

其生成规则的特点为局部相似性(local similarity),有如下性质:

  • 输出中每个NxN模式的像素至少在输入中出现一次。

  • NxN模式在输入中的分布应该类似于NxN模式在足够多的输出上的分布。

生成算法主要思想是:

  • 将整个输出按参数N划分为数个区域,每个区域设为未观察的叠加状态。

  • 进行观察,每次观察选择具有非零最小熵的区域,对其进行“坍缩”(通过其确定的状态系数在输入中选择一个N*N区域)并传播观察到的信息。重复观察直到找不到相应区域,此时输出已经完全确定。

算法细节请参见项目主页及其代码。

这个程序进行拓展后,输入可以不止一张位图,能够用于生成游戏地图、PCB布线等。且不止2D图形,也能生成3D图形。详情请参见项目主页。

项目地址:

参考链接:

  • 作者:侯炜

https://github.com/mxgmn/WaveFunctionCollapse/blob/master/README.md
https://github.com/mxgmn/WaveFunctionCollapse