Android Kotlin opencv MatOfPoint 转 MatOfPoint2f 报错踩坑 (解决)

知识养成了思想,思想同时又在融化知识。这篇文章主要讲述Android Kotlin opencv MatOfPoint 转 MatOfPoint2f 报错踩坑 (解决)相关的知识,希望能为你提供帮助。

val contours:MutableList< MatOfPoint> = ArrayList() val contours2f:MutableList< MatOfPoint2f> = ArrayList()for (point in contours){ contours2f.add(MatOfPoint2f(point.toArray())) }// 无法通过编译, 传入参数类型不匹配

查看 opencv 中  MatOfPoint2f 的构造函数
< init> (vararg Point!) defined in org.opencv.core.MatOfPoint2f
< init> (Long) defined in org.opencv.core.MatOfPoint2f
< init> (Mat!) defined in org.opencv.core.MatOfPoint2f
 
发现(Point...a)被转为了(vararg Point!)
 
经过查资料后改为
val contours:MutableList< MatOfPoint> = ArrayList() val contours2f:MutableList< MatOfPoint2f> = ArrayList()for (point in contours){ contours2f.add(MatOfPoint2f(*point.toArray()))// 这里多了个* }

 
【Android Kotlin opencv MatOfPoint 转 MatOfPoint2f 报错踩坑 (解决)】IDE不再报错, 手上没有设备, 未测试.

    推荐阅读