我正在使用相机意图使用Android相机。从那里,我希望能够拍摄一张照片,并将其与Android Studio中创建的图像资产进行比较,并从本质上找到它最接近的“模板”并从那里进行其他操作。现在,我只想将拍摄的图片与一个模板进行比较,以使事情变得更容易并首先开始工作。
我已经尝试过弄乱Mats和matchTemplate了,我正要拍张照片,但是之后会崩溃。我曾尝试寻找其他建议,但似乎没有找到与我所寻找的东西完全匹配的东西。此外,我还有很多其他搜索建议,例如将模板图像获取为位图
这是我到目前为止所拥有的。
//Get template from where it’s saved in project
val Template = BitmapFactory.decodeResource(getResources(),R.mipmap.template)
var TemplateMat = Mat(Template.width, Template.height, CvType.CV_8U)
//get picture taken from camera
val bmp = data?.extras?.get("data") as Bitmap
val newbmp = Bitmap.createScaledBitmap(bmp, 200, 200, false)
var detectedMat = Mat(newbmp.width, newbmp.height,CvType.CV_8U)
bitmapToMat(newbmp, detectedMat)
bitmapToMat(Template, TemplateMat)
var result = Mat(TemplateMat.width(),TemplateMat.height(),CvType.CV_8U)
matchTemplate(detectedMat, TemplateMat,result, TM_CCOEFF_NORMED)
normalize(result,result,0.0,1.0, NORM_MINMAX,-1)
val minMax = minMaxLoc(result)
val matchLoc = minMax.maxLoc
//If it finds a match, {do something}