Фотомозаика в системе Mathematica: пример из 2008 года не работает в системе Mathematica 8

Я пытаюсь заставить работать пример Mathematica. Это тот, что в блоге Тео Грея .

Я думаю, что Mathematica, должно быть, изменилась с тех пор, как он написал этот код (май 2008 г.), поскольку я не могу извлечь из этого ничего разумного, несмотря на то, что изменил почти все. Могу ли я использовать ImageData вместо импорта? Может ли кто-нибудь предложить версию этого кода, которая работает для Mathematica 8?

imagePool = 
 Map[With[{i = Import[#]}, {i, Mean[Flatten[N[i[[1, 1]]], 1]]}] &, 
  FileNames["Pool/*.jpg"]];
closeMatch[c_] := 
  RandomChoice[Take[SortBy[imagePool, Norm[c - #[[2]]] &], 20]][[1]];
Grid[Reverse[
  Map[closeMatch, Import["MendeleevIcon.tif"][[1, 1]], {2}]], 
  Spacings -> {0, 0}]

6
задан Mr.Wizard 22 October 2011 в 18:11
поделиться