Nullpointer, когда все в порядке, kotlin

Итак, я создаю приложение для обработки изображений с помощью kotlin, и, как видно из названия, у меня нулевой указатель, когда не было предположения, что это произойдет, как я покажу на следующем рисунке.

Здесь отладка

и код

fun medianFilter1(noisy_image:String, final_image:String, window_side_size:Int) {

    val path = "files/$noisy_image"
    val finalPath = "files/$final_image"
    val src: Mat = imread(path)
    val window = window_side_size
    val edgeX = Math.floor(window / 2.0).roundToInt()
    val edgeY = Math.floor(window / 2.0).roundToInt()
    val picWidth = src.width()
    val picHeight = src.height()

    var counter = 1
    val threadNumber = 4

    runBlocking {
        var in_height = picHeight / threadNumber

        for (m in threadNumber downTo 1) {
            println(in_height*(counter-1))
            println(in_height*counter)
            launch(newSingleThreadContext("MyOwnThread")) {
                for (y in in_height*(counter-1) until in_height*counter) {
                    for (x in edgeY until picWidth) {
                        var Red = ArrayList<Double>()
                        var Green = ArrayList<Double>()
                        var Blue = ArrayList<Double>()
                        var i = 0
                        for (fx in 0 until window) {
                            for (fy in 0 until window) {
                                    Red.add(src.get(y + fy,x + fx )[0])
                                    Green.add(src.get(y + fy ,x + fx )[1])
                                    Blue.add(src.get( y + fy ,x + fx )[2])
                                    i += 1
                            }
                        }
                        Red = insertionSort(Red)
                        Blue = insertionSort(Blue)
                        Green = insertionSort(Green)
                        src.put(x, y, Red.get(Red.count() / 2), Green.get(Green.count() / 2), Blue.get(Blue.count() / 2))
                    }
                }
                counter += 1
                imwrite(finalPath, src)
            }

        }

    }

}

0 ответов

Другие вопросы по тегам