马尔可夫(链)图像生成器?

计算科学 算法 迭代法 机器学习 计算机视觉 约束
2021-12-08 10:09:04

马尔可夫链可用于生成或自动完成文本。

https://en.wikipedia.org/wiki/Markov_chain#Markov_text_generators

读取训练文本,并记住有关文本的一些信息,例如:

The word "I" is usually followed by the word "have".
The word "to" is usually followed by the word "go", and somtimes the word "be".

等等...

这可用于在文本中生成,例如:

相关雌性和关键物种的骄傲在四只大型猫科动物的繁殖计划中寻求展示十年,因为在历史时期与超过 250 公斤(550 磅)的敌对雄性持续战斗而受伤。直到拉斯科和中世纪文化,他们可能会带到秘鲁。

虽然,这对于许多其他类型的文本来说效果要差得多。


问:可以显示示例图像,其中类似于使用马尔可夫链生成/自动完成文本的方法已用于处理图像?

或者,这在计算上是否仍然不切实际地昂贵?


我无法通过搜索找到示例,我可能缺乏正确的词汇来这样做。

像这样使用马尔可夫链在计算上可能非常昂贵,一个小的 5x5 邻域,在单色图像(只有黑白,没有灰色阴影)中有 2^(5^2) ≈ 3300 万种可能的组合。


此类处理可能包括:修复、综合、提高分辨率和纠错/检查。


使用其他方法进行修复和合成的示例:

修复:修复图像中的间隙。

修复示例 其他修复示例和信息:

https://reference.wolfram.com/language/ref/Inpaint.html(点击“全部打开”)。

Synthisis:例如 Google Deep Dream,使用卷积神经网络和 inceptionism。

综合例子

2个回答

我最近实现了这个,基本上它计算每种特定颜色与另一种颜色接壤的次数以构成频率表。为了生成图像,选择随机颜色和位置,然后从那里构建图像的其余部分。结果不是很连贯,但它们与原始调色板相匹配。

为了确保每种颜色都有一个邻居,颜色被分桶。您可以修改这种信息丢失程度。您还可以使用 8 个邻居或 4 个邻居,还可以学习颜色的方向(上、左、右、下等)。

这时候它只在从输入图像中学习后生成随机图像,代码在这里:https ://gist.github.com/JonnoFTW/5b036797593c5c40aabdf2d6c1399387

更新:完整的存储库在这里:https ://github.com/JonnoFTW/markov-img-gen

尝试让它填补图像中的空白应该很简单,尽管我怀疑结果是荒谬的。

这是一些示例输出:基于马尔可夫的样本图像

关于使用马尔科夫重现艺术的实验的博客文章: https ://magenta.as/using-machine-learning-to-make-art-84df7d3bb911

代码在@william-index 制作的 github 上: https ://github.com/william-index/markov-fun