在构建发布模式iOS应用程序中,vImageMatrixMultiply_ARGB8888ToPlanar8不起作用

时间:2018-10-31 19:06:46

标签: ios swift vimage

我正在开发图像处理应用程序,并尝试使用vImage。它工作得很好,并在调试模式下获得正确的结果。但是,它始终会返回黑色图像或在释放模式下引发错误。

我已经尝试过官方的example,当我在发布模式下构建它时也会得到黑色图像。

?`:=`

 system.time({for (i in NROW(x):1) {
     m <- matrix(rnorm(8*15),nrow=8,ncol=15);
     x[i , (1:120) := as.list(t(m))] } })

 #   user  system elapsed 
 # 4.390   0.096   4.486 


system.time({for (i in NROW(x):1) {
     m <- matrix(rnorm(8*15),nrow=8,ncol=15);
     x[i , ] <- as.list(t(m)) } })

#   user  system elapsed 
# 67.963  15.573  83.572 

1 个答案:

答案 0 :(得分:0)

预偏置应该是四个元素的向量。试试这个:

let preBias: [Int16] = [0, 0, 0, 0]
let postBias: Int32 = 0

vImageMatrixMultiply_ARGB8888ToPlanar8(&_buffer, 
                                       destinationBuffer,
                                       &coefficientsMatrix, 
                                       0x1000, 
                                       preBias, 
                                       postBias, 
                                       vImage_Flags(kvImageNoFlags))