求助,mathematica6.0版本中的import[""][[1,1]]什么意思
mathematica吧
全部回复
仅看楼主
level 12
705733 楼主
最近找到一段代码,不过是6.0版本的,复制到现在版本出错了,想知道这里的N[i[[1, 1]]],里面的[[1,1]]是干什么用的,好像问题就出在这里,但是没有6.0版本的帮助,无奈...
代码:
imagePool =
Map[With[{i = Import[#]}, {i, Mean[Flatten[N[i[[1, 1]]], 1]]}] &,
FileNames["\\48\\*.jpg"]];
closeMatch[c_] :=
RandomChoice[Take[SortBy[imagePool, Norm[c - #[[2]]] &], 20]][[1]];
Grid[Reverse[Map[closeMatch, Import["MasterImage.tif"][[1, 1]], {2}]],
Spacings -> {0, 0}]
PS按原作者描述好像是用来求图片RGB中位数的,不是很清楚,
原作者原文:Mathematica首先把所有照片以及每个照片的RGB值的中位数存成一个list,函数closeMatch将图片按照RGB值的均方根排序,然后随机从头20个中选出一个。第三行用Grid函数输出我们所要的马赛克拼图。
2017年10月06日 15点10分 1
level 12
705733 楼主
...这贴被度娘吞了几天...问题已经解决了,6.0版本图像文件被保存为Graphics[Raster[matrix, ...], ...]格式,然后[[1,1]]读取出图像矩阵,目前版本的话直接用imagedata读取出矩阵来就行了。
然后grid里的reverse好像也没有必要了
2017年10月10日 15点10分 2
level 1
修改后是怎样的
2018年03月05日 15点03分 3
1