增加识别日志

This commit is contained in:
2025-11-04 13:53:35 +08:00
parent 069306d48b
commit 4d8aedbaa7
@@ -8,12 +8,14 @@ import com.google.gson.reflect.TypeToken
import com.sw.inbound.MyApp import com.sw.inbound.MyApp
import com.sw.inbound.utils.AssetsTool import com.sw.inbound.utils.AssetsTool
import com.sw.inbound.utils.ImageUtil import com.sw.inbound.utils.ImageUtil
import com.sw.inbound.utils.ext.toJsonString
import io.objectbox.Box import io.objectbox.Box
import io.objectbox.kotlin.boxFor import io.objectbox.kotlin.boxFor
import io.objectbox.query.Query import io.objectbox.query.Query
import org.pytorch.IValue import org.pytorch.IValue
import org.pytorch.Module import org.pytorch.Module
import org.pytorch.torchvision.TensorImageUtils import org.pytorch.torchvision.TensorImageUtils
import timber.log.Timber
import java.io.File import java.io.File
import java.io.FileOutputStream import java.io.FileOutputStream
import java.io.IOException import java.io.IOException
@@ -88,7 +90,13 @@ object FoodModule {
//查询比较分数 //查询比较分数
// val tempList = query.findWithScores().sortedBy { it.score }.map { "${it.get().name}|${it.get().foodIdx}|${it.score}" } // val tempList = query.findWithScores().sortedBy { it.score }.map { "${it.get().name}|${it.get().foodIdx}|${it.score}" }
val map = mutableMapOf<String, Int>() val map = mutableMapOf<String, Int>()
query.findIdsWithScores().filter { it.score < 0.2 }.forEach { val idScoreList = query.findIdsWithScores()
val nameScoreList = mutableListOf<IdNameScore>()
idScoreList.forEach {
nameScoreList.add(IdNameScore(id = it.id, name = box.get(it.id).name?:"", score = it.score))
}
Timber.tag("FoodModule").d("queryFood数据:${nameScoreList.toJsonString()}")
idScoreList.filter { it.score < 0.2 }.forEach {
val food = box.get(it.id) val food = box.get(it.id)
//FoodQueryResult(id = it.id, name = food.name, foodIdx = food.foodIdx, score = it.score) //FoodQueryResult(id = it.id, name = food.name, foodIdx = food.foodIdx, score = it.score)
food.name?.let { key -> food.name?.let { key ->
@@ -100,6 +108,11 @@ object FoodModule {
return list return list
} }
data class IdNameScore(
val id:Long,
val name:String,
val score: Double
)
fun initDefFoodData(context: Context, action:()-> Unit={}) { fun initDefFoodData(context: Context, action:()-> Unit={}) {
val count = box.all.count { it.foodIdx == DEFAULT_FOOD_INDEX } val count = box.all.count { it.foodIdx == DEFAULT_FOOD_INDEX }