500*_*500 1 wolfram-mathematica image matrix covariance
我想计算下面图像的协方差矩阵.基于像素.这是将磁盘的每个黑像素视为向量.
虽然下面的单位是厘米,但我使用的屏幕上每厘米有32个像素.
在协方差矩阵计算本身之前,我无法弄清楚获得所有像素矢量的方法.

frmXY = {{6.59, 1.59}, {33.41, 28.41}};
stim = {{10.85, 21.91, 0.97}, {16.8, 5.26, 0.97}, {11.78, 7.11, 0.97},
{12.64, 14.13, 0.97`}, {20.24, 16.16, 0.97}, {29.51, 8.06,1.53},
{22.42, 5.78, 1.53}, {27.13, 16.47, 1.53}}
Graphics[{EdgeForm[Thick],White, Rectangle @@ frmXY, Black,
Disk @@@ (stim /. {a_, b_, c_} :> {{a, b}, c})}, ImageSize -> 300]
Run Code Online (Sandbox Code Playgroud)
你的问题不清楚是什么构成描述你的模型/系统的随机变量,我不明白你试图采用协方差矩阵是什么.
然而,这是一个简单的例子,展示了如何获得协方差矩阵并计算特征值和特征向量(基本上,重现你的第一个图).
list = RandomReal[
MultinormalDistribution[{0, 0}, {{6, 3}, {3, 3}}], {5000}];
sampleCov = Covariance@list;
{eigValues, eigVectors} = Eigensystem@sampleCov;
Show[ListPlot@list,
Graphics[{Red, Arrowheads[0.03],
Arrow[{{0, 0}, #}] & /@ (eigValues eigVectors)}]]
Run Code Online (Sandbox Code Playgroud)

| 归档时间: |
|
| 查看次数: |
812 次 |
| 最近记录: |