平均像素的scala返回矩阵

平均像素的scala返回矩阵,scala,matrix,Scala,Matrix,问题是:我想修改(然后返回)函数参数中给定的整数矩阵。函数平均值(MatrixMotionBlur类)给出了自身像素、上、下和左像素之间的平均值。遵循以下公式: 结果(x,y)=(M1(x,y)+M1(x-1,y)+M1(x,y-1)+M1(x,y+1))/4 这是到目前为止我已经实现的代码 矩阵运动模糊-平均函数 单线程运行 这里的目标是应用“平均”方法改变矩阵值并返回该矩阵。问题是当我在矩阵上插入值时,程序给了我错误 有什么办法吗?功能性方法 val updatedData = data

问题是:我想修改(然后返回)函数参数中给定的整数矩阵。函数平均值(MatrixMotionBlur类)给出了自身像素、上、下和左像素之间的平均值。遵循以下公式:

结果(x,y)=(M1(x,y)+M1(x-1,y)+M1(x,y-1)+M1(x,y+1))/4

这是到目前为止我已经实现的代码

矩阵运动模糊-平均函数

单线程运行

这里的目标是应用“平均”方法改变矩阵值并返回该矩阵。问题是当我在矩阵上插入值时,程序给了我错误

有什么办法吗?

功能性方法

val updatedData = data.map{ outter =>
    outter(i).map{ inner =>
        mx.average(i.j)
    }
}
请注意,
Seq
是不可变的集合类型,您不能仅仅修改它,您只能创建新的、修改过的集合


顺便问一下,为什么要从1开始迭代,而不是从0开始。确实要吗?

请使用正确的代码格式,而不是屏幕截图。。。这些截图泄露了大量与当前问题无关的信息。请看这里:def run(data:Seq[Seq[Int]],numberOfWorkers:Int)=Future[Seq[Seq[Int]]{val mx=new MatrixMotionBlur var myMatrix=ofDim[Int](data.length,data(0).length)for(i数组也是不可变的。您需要阅读一些有关Scala集合类型的内容,好的起点是