相关疑难解决方法(0)

ZCA Whitening with opencv和java

我正在尝试实现如下所示的ZCA Whitening算法:如何实现ZCA Whitening?在Scala中使用opencv的Python(使用Java api)但是我找不到那里使用的大部分函数(phython with numpy).

到目前为止,我试过这个:

正在加载图像:

val input = Imgcodecs.imread(img)
Imgproc.cvtColor(input, input, Imgproc.COLOR_BGR2GRAY)
input.convertTo(input, CvType.CV_64FC1)
Run Code Online (Sandbox Code Playgroud)

然后应用算法:

//Covariance matrix
val covar, mean = new Mat()
Core.calcCovarMatrix(input, covar, mean, Core.COVAR_NORMAL | Core.COVAR_ROWS) 
Core.divide(covar, new Scalar(input.rows - 1), covar)

//Singular Value Decomposition
val w, u, vt = new Mat()
Core.SVDecomp(covar, w, u, vt, Core.SVD_FULL_UV)

//#Whitening constant, it prevents division by zero
val  epsilon = 1e-5
Run Code Online (Sandbox Code Playgroud)

实施最后的转型

ZCAMatrix = np.dot(U, np.dot(np.diag(1.0/np.sqrt(S + epsilon)), U.T))
Run Code Online (Sandbox Code Playgroud)

我尝试过:

var ZCAMatrix = …
Run Code Online (Sandbox Code Playgroud)

java opencv scala image-processing

10
推荐指数
0
解决办法
1123
查看次数

应用SVD会立即引发内存错误?

我试图在我的矩阵(3241 x 12596)上应用SVD,这是在进行一些文本处理后获得的(最终目标是执行潜在语义分析),我无法理解为什么会发生这种情况,因为我的64位机器有16GB内存.这个时刻svd(self.A)被调用,它会抛出一个错误.准确的错误如下:

Traceback (most recent call last):
  File ".\SVD.py", line 985, in <module>
    _svd.calc()
  File ".\SVD.py", line 534, in calc
    self.U, self.S, self.Vt = svd(self.A)
  File "C:\Python26\lib\site-packages\scipy\linalg\decomp_svd.py", line 81, in svd
    overwrite_a = overwrite_a)
MemoryError
Run Code Online (Sandbox Code Playgroud)

所以我尝试使用

self.U, self.S, self.Vt = svd(self.A, full_matrices= False)
Run Code Online (Sandbox Code Playgroud)

这次,它抛出以下错误:

Traceback (most recent call last):
  File ".\SVD.py", line 985, in <module>
    _svd.calc()
  File ".\SVD.py", line 534, in calc
    self.U, self.S, self.Vt = svd(self.A, full_matrices= False)
  File "C:\Python26\lib\site-packages\scipy\linalg\decomp_svd.py", line 71, in svd
    return numpy.linalg.svd(a, …
Run Code Online (Sandbox Code Playgroud)

python memory nlp numpy scipy

6
推荐指数
2
解决办法
6166
查看次数

标签 统计

image-processing ×1

java ×1

memory ×1

nlp ×1

numpy ×1

opencv ×1

python ×1

scala ×1

scipy ×1