Commit add7c9f7 authored by wanglei's avatar wanglei

...

parent 9d4f3cf1
......@@ -81,7 +81,7 @@ dependencies {
implementation 'com.github.zhpanvip:viewpagerindicator:1.2.3'
//图片处理
implementation 'org.opencv:opencv:4.10.0'
// implementation 'org.opencv:opencv:4.10.0'
//网络
implementation group: 'com.google.code.gson', name: 'gson', version: '2.10.1'
......
......@@ -59,7 +59,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
BarUtils.setStatusBarColor(this, Color.parseColor("#F2F3F7"))
binding.root.updatePadding(top = BarUtils.getStatusBarHeight())
System.loadLibrary("opencv_java4")
// System.loadLibrary("opencv_java4")
if (!checkStorePermission()) {
if (dialog == null) {
......
......@@ -47,7 +47,7 @@ class RepeatActivity : BaseActivity<ActivityRepeatBinding>() {
BarUtils.setStatusBarColor(this, Color.TRANSPARENT)
binding.root.updatePadding(top = BarUtils.getStatusBarHeight())
System.loadLibrary("opencv_java4")
// System.loadLibrary("opencv_java4")
mediaAdapter = MediaAdapter {
binding.ivSelectAll.isSelected = it.first
......
package com.base.filerecoveryrecyclebin.utils
import org.opencv.core.Core
import org.opencv.core.Mat
import org.opencv.core.MatOfFloat
import org.opencv.core.MatOfInt
import org.opencv.imgcodecs.Imgcodecs
import org.opencv.imgproc.Imgproc
object OpencvImageHelp {
fun opencvCompareSimilar(path1: String, path2: String): Double {
// 将File对象转换为Mat对象
val image1 = Imgcodecs.imread(path1)
val image2 = Imgcodecs.imread(path2)
// 转换为灰度图
val grayImage1 = Mat()
val grayImage2 = Mat()
Imgproc.cvtColor(image1, grayImage1, Imgproc.COLOR_BGR2GRAY)
Imgproc.cvtColor(image2, grayImage2, Imgproc.COLOR_BGR2GRAY)
// 计算直方图
val histSize = MatOfInt(256)
val range = MatOfFloat(0f, 256f)
val hist1 = Mat()
val hist2 = Mat()
Imgproc.calcHist(mutableListOf(grayImage1), MatOfInt(0), Mat(), hist1, histSize, range)
Imgproc.calcHist(mutableListOf(grayImage2), MatOfInt(0), Mat(), hist2, histSize, range)
// 归一化直方图
Core.normalize(hist1, hist1, 0.0, 1.0, Core.NORM_MINMAX, -1, Mat())
Core.normalize(hist2, hist2, 0.0, 1.0, Core.NORM_MINMAX, -1, Mat())
// 使用相关性方法比较直方图
//HISTCMP_CORREL 相关性
//HISTCMP_INTERSECT 交集
val similarity: Double = Imgproc.compareHist(hist1, hist2, Imgproc.HISTCMP_CORREL)
// 将相似度转换为百分比
val similarityPercentage = similarity * 100.0
return similarityPercentage
}
}
\ No newline at end of file
//package com.base.filerecoveryrecyclebin.utils
//
//import org.opencv.core.Core
//import org.opencv.core.Mat
//import org.opencv.core.MatOfFloat
//import org.opencv.core.MatOfInt
//import org.opencv.imgcodecs.Imgcodecs
//import org.opencv.imgproc.Imgproc
//
//object OpencvImageHelp {
//
// fun opencvCompareSimilar(path1: String, path2: String): Double {
// // 将File对象转换为Mat对象
// val image1 = Imgcodecs.imread(path1)
// val image2 = Imgcodecs.imread(path2)
//
// // 转换为灰度图
// val grayImage1 = Mat()
// val grayImage2 = Mat()
// Imgproc.cvtColor(image1, grayImage1, Imgproc.COLOR_BGR2GRAY)
// Imgproc.cvtColor(image2, grayImage2, Imgproc.COLOR_BGR2GRAY)
//
// // 计算直方图
// val histSize = MatOfInt(256)
// val range = MatOfFloat(0f, 256f)
// val hist1 = Mat()
// val hist2 = Mat()
// Imgproc.calcHist(mutableListOf(grayImage1), MatOfInt(0), Mat(), hist1, histSize, range)
// Imgproc.calcHist(mutableListOf(grayImage2), MatOfInt(0), Mat(), hist2, histSize, range)
//
// // 归一化直方图
// Core.normalize(hist1, hist1, 0.0, 1.0, Core.NORM_MINMAX, -1, Mat())
// Core.normalize(hist2, hist2, 0.0, 1.0, Core.NORM_MINMAX, -1, Mat())
//
// // 使用相关性方法比较直方图
// //HISTCMP_CORREL 相关性
// //HISTCMP_INTERSECT 交集
// val similarity: Double = Imgproc.compareHist(hist1, hist2, Imgproc.HISTCMP_CORREL)
//
// // 将相似度转换为百分比
// val similarityPercentage = similarity * 100.0
//
// return similarityPercentage
// }
//}
\ No newline at end of file
......@@ -3,7 +3,7 @@ package com.base.filerecoveryrecyclebin.utils
import android.graphics.BitmapFactory
import android.provider.MediaStore.Audio.Radio
import com.base.filerecoveryrecyclebin.bean.MediaBean
import com.base.filerecoveryrecyclebin.utils.OpencvImageHelp.opencvCompareSimilar
//import com.base.filerecoveryrecyclebin.utils.OpencvImageHelp.opencvCompareSimilar
import java.io.File
import kotlin.random.Random
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment