From 393bef7c91620f416db0018f2bca817deee8ff49 Mon Sep 17 00:00:00 2001 From: woheller69 Date: Tue, 30 Jan 2024 16:05:51 +0100 Subject: [PATCH] implement usage of meta model implement GPS usage icon modified layout improvements --- README.md | 3 +- app/src/main/AndroidManifest.xml | 1 + .../examples/soundclassifier/Location.java | 59 +++++ .../examples/soundclassifier/MainActivity.kt | 72 +++--- .../soundclassifier/SoundClassifier.kt | 210 ++++++++++-------- .../res/drawable/ic_launcher_foreground.xml | 17 +- .../res/drawable/ic_launcher_monochrome.xml | 9 +- app/src/main/res/drawable/icon_large.xml | 80 +++++++ .../drawable/oval_holo_orange_light_thin.xml | 11 + app/src/main/res/layout/activity_main.xml | 137 +++++++----- app/src/main/res/values-de/strings.xml | 7 +- app/src/main/res/values/strings.xml | 7 +- .../metadata/android/en-US/images/icon.png | Bin 37344 -> 41919 bytes 13 files changed, 392 insertions(+), 221 deletions(-) create mode 100644 app/src/main/java/org/tensorflow/lite/examples/soundclassifier/Location.java create mode 100644 app/src/main/res/drawable/icon_large.xml create mode 100644 app/src/main/res/drawable/oval_holo_orange_light_thin.xml diff --git a/README.md b/README.md index 9507282..fb6ffde 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,7 @@ This work is licensed under a - This app is built on the [BirdNET framework](https://github.com/kahst/BirdNET-Lite) by [**@kahst**](https://github.com/kahst), published under CC BY NC SA 4.0 license -- It uses the TFLite library from [BirdNET-Analyzer](https://github.com/kahst/BirdNET-Analyzer/tree/main/checkpoints), published under CC BY NC SA 4.0 license +- At first start it downloads the BirdNet TFLite library, which is published under CC BY NC SA 4.0 license, from a different location +- Label files from BirdNET are used under GPL 3.0 with permission from the author - It uses code from [Tensorflow](https://www.tensorflow.org/lite/examples) examples, published under [Apache 2.0 license](https://www.apache.org/licenses/LICENSE-2.0.html) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index b01315d..611541e 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -2,6 +2,7 @@ + - soundClassifier.audioGain = value - } - } - - requestMicrophonePermission() + requestPermissions() } override fun onResume() { super.onResume() + Location.requestLocation(this, soundClassifier) if (checkMicrophonePermission()){ soundClassifier.start() } else { Toast.makeText(this, "Audio permission not granted :(", Toast.LENGTH_LONG).show() } + if (!checkLocationPermission()){ + Toast.makeText(this, "Location permission not granted :(", Toast.LENGTH_LONG).show() + } keepScreenOn(true) } - override fun onTopResumedActivityChanged(isTopResumedActivity: Boolean) { - // Handles "top" resumed event on multi-window environment - if (checkMicrophonePermission()) { - if (isTopResumedActivity) { - soundClassifier.start() - } else { - soundClassifier.stop() - } - } + override fun onPause() { + super.onPause() + Location.stopLocation(this) + if (soundClassifier.isRecording) soundClassifier.stop() } - override fun onRequestPermissionsResult( - requestCode: Int, - permissions: Array, - grantResults: IntArray - ) { - super.onRequestPermissionsResult(requestCode, permissions, grantResults) - if (requestCode == REQUEST_RECORD_AUDIO) { - if (grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) { - Log.i(TAG, "Audio permission granted :)") - soundClassifier.start() - } else { - Log.e(TAG, "Audio permission not granted :(") - } + private fun checkMicrophonePermission(): Boolean { + if (ContextCompat.checkSelfPermission(this, Manifest.permission.RECORD_AUDIO ) == PackageManager.PERMISSION_GRANTED) { + return true + } else { + return false } } - private fun checkMicrophonePermission(): Boolean { - if (ContextCompat.checkSelfPermission( - this, - Manifest.permission.RECORD_AUDIO - ) == PackageManager.PERMISSION_GRANTED - ) { + private fun checkLocationPermission(): Boolean { + if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) { return true } else { return false } } - private fun requestMicrophonePermission() { - if (ContextCompat.checkSelfPermission( - this, - Manifest.permission.RECORD_AUDIO - ) != PackageManager.PERMISSION_GRANTED - ) { - requestPermissions(arrayOf(Manifest.permission.RECORD_AUDIO), REQUEST_RECORD_AUDIO) + private fun requestPermissions() { + val perms = mutableListOf() + if (ContextCompat.checkSelfPermission(this, Manifest.permission.RECORD_AUDIO) != PackageManager.PERMISSION_GRANTED) { + perms.add(Manifest.permission.RECORD_AUDIO) + } + if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + perms.add(Manifest.permission.ACCESS_COARSE_LOCATION) } + if (!perms.isEmpty()) requestPermissions(perms.toTypedArray(), REQUEST_PERMISSIONS) } private fun keepScreenOn(enable: Boolean) = @@ -116,7 +97,6 @@ class MainActivity : AppCompatActivity() { } companion object { - const val REQUEST_RECORD_AUDIO = 1337 - private const val TAG = "BirdNET-lite" + const val REQUEST_PERMISSIONS = 1337 } } diff --git a/app/src/main/java/org/tensorflow/lite/examples/soundclassifier/SoundClassifier.kt b/app/src/main/java/org/tensorflow/lite/examples/soundclassifier/SoundClassifier.kt index 3cb4207..b02bdfa 100644 --- a/app/src/main/java/org/tensorflow/lite/examples/soundclassifier/SoundClassifier.kt +++ b/app/src/main/java/org/tensorflow/lite/examples/soundclassifier/SoundClassifier.kt @@ -19,6 +19,7 @@ package org.tensorflow.lite.examples.soundclassifier import android.annotation.SuppressLint import android.content.Context +import android.location.Location import android.media.AudioFormat import android.media.AudioRecord import android.media.MediaRecorder @@ -26,6 +27,7 @@ import android.os.Handler import android.os.Looper import android.os.SystemClock import android.util.Log +import android.widget.Toast import androidx.annotation.MainThread import androidx.lifecycle.DefaultLifecycleObserver import androidx.lifecycle.LifecycleOwner @@ -41,6 +43,10 @@ import kotlin.math.sin import org.tensorflow.lite.Interpreter import org.tensorflow.lite.examples.soundclassifier.databinding.ActivityMainBinding import org.tensorflow.lite.support.common.FileUtil +import java.time.LocalDate +import kotlin.math.ceil +import kotlin.math.cos +import kotlin.math.round /** * Performs classification on sound. @@ -66,18 +72,18 @@ class SoundClassifier( val labelsBase: String = "labels", /** Path of the converted .tflite file, relative to the assets/ directory. */ val modelPath: String = "BirdNET_GLOBAL_6K_V2.4_Model_FP16.tflite", + /** Path of the meta model .tflite file, relative to the assets/ directory. */ + val modelMetaPath: String = "BirdNET_GLOBAL_6K_V2.4_MData_Model_FP16.tflite", /** The required audio sample rate in Hz. */ val sampleRate: Int = 48000, /** Multiplier for audio samples */ - var audioGain: Int = 0, - /** Number of warm up runs to do after loading the TFLite model. */ val warmupRuns: Int = 3, /** Number of points in average to reduce noise. (default 10)*/ val pointsInAverage: Int = 1, - /** Overlap factor of recognition period */ - var overlapFactor: Float = 0.5f, /** Probability value above which a class is labeled as active (i.e., detected) the display. (default 0.3) */ var probabilityThreshold: Float = 0.3f, //min must be > 0 + /** Probability value above which a class in the meta model is labeled as active (i.e., detected) the display. (default 0.01) */ + var metaProbabilityThreshold: Float = 0.01f, //min must be > 0 ) var isRecording: Boolean = false @@ -101,13 +107,6 @@ class SoundClassifier( } } - /** Multipler for audio samples */ - var audioGain: Float - get() = options.audioGain.toFloat() - set(value) { - options.audioGain = value.toInt() - } - /** Probability value above which a class is labeled as active (i.e., detected) the display. */ var probabilityThreshold: Float get() = options.probabilityThreshold @@ -131,15 +130,22 @@ class SoundClassifier( /** The TFLite interpreter instance. */ private lateinit var interpreter: Interpreter + private lateinit var meta_interpreter: Interpreter /** Audio length (in # of PCM samples) required by the TFLite model. */ private var modelInputLength = 0 + /** input Length of the meta model */ + private var metaModelInputLength = 0 + /** Number of output classes of the TFLite model. */ private var modelNumClasses = 0 + private var metaModelNumClasses = 0 + /** Used to hold the real-time probabilities predicted by the model for the output classes. */ private lateinit var predictionProbs: FloatArray + private lateinit var metaPredictionProbs: FloatArray /** Latest prediction latency in milliseconds. */ private var latestPredictionLatencyMs = 0f @@ -151,10 +157,12 @@ class SoundClassifier( /** Buffer that holds audio PCM sample that are fed to the TFLite model for inference. */ private lateinit var inputBuffer: FloatBuffer + private lateinit var metaInputBuffer: FloatBuffer init { loadLabels(context) setupInterpreter(context) + setupMetaInterpreter(context) warmUpModel() } @@ -196,24 +204,24 @@ class SoundClassifier( /** Retrieve labels from "labels.txt" file */ private fun loadLabels(context: Context) { - val localeList = context.resources.configuration.locales - val language = localeList.get(0).language - var filename = options.labelsBase+"_${language}.txt" - - //Check if file exists - val assetManager = context.assets // Replace 'assets' with actual AssetManager instance - try { - val mapList = assetManager.list("")?.toMutableList() - - if (mapList != null) { - if (!mapList.contains(filename)) { - filename = options.labelsBase+"_en.txt" - } + val localeList = context.resources.configuration.locales + val language = localeList.get(0).language + var filename = options.labelsBase+"_${language}.txt" + + //Check if file exists + val assetManager = context.assets // Replace 'assets' with actual AssetManager instance + try { + val mapList = assetManager.list("")?.toMutableList() + + if (mapList != null) { + if (!mapList.contains(filename)) { + filename = options.labelsBase+"_en.txt" } - } catch (ex: IOException) { - ex.printStackTrace() - filename = options.labelsBase+"_en.txt" } + } catch (ex: IOException) { + ex.printStackTrace() + filename = options.labelsBase+"_en.txt" + } Log.i(TAG,filename) try { @@ -227,7 +235,7 @@ class SoundClassifier( } labelList = wordList.map { it.toTitleCase() } } catch (e: IOException) { - Log.e(TAG, "Failed to read model ${filename}: ${e.message}") + Log.e(TAG, "Failed to read labels ${filename}: ${e.message}") } } @@ -252,13 +260,77 @@ class SoundClassifier( Log.e( TAG, "Mismatch between metadata number of classes (${labelList.size})" + - " and model output length ($modelNumClasses)" + " and model output length ($modelNumClasses)" ) } // Fill the array with NaNs initially. predictionProbs = FloatArray(modelNumClasses) { Float.NaN } inputBuffer = FloatBuffer.allocate(modelInputLength) + + } + + private fun setupMetaInterpreter(context: Context) { + + meta_interpreter = try { + val tfliteMetaBuffer = FileUtil.loadMappedFile(context, options.modelMetaPath) + Log.i(TAG, "Done creating TFLite buffer from ${options.modelMetaPath}") + Interpreter(tfliteMetaBuffer, Interpreter.Options()) + } catch (e: IOException) { + Log.e(TAG, "Failed to load TFLite meta model - ${e.message}") + return + } + // Inspect input and output specs. + val metaInputShape = meta_interpreter.getInputTensor(0).shape() + Log.i(TAG, "TFLite meta model input shape: ${metaInputShape.contentToString()}") + metaModelInputLength = metaInputShape[1] + + val metaOutputShape = meta_interpreter.getOutputTensor(0).shape() + Log.i(TAG, "TFLite meta model output shape: ${metaOutputShape.contentToString()}") + metaModelNumClasses = metaOutputShape[1] + if (metaModelNumClasses != labelList.size) { + Log.e( + TAG, + "Mismatch between metadata number of classes (${labelList.size})" + + " and meta model output length ($metaModelNumClasses)" + ) + } + // Fill the array with 1 initially. + metaPredictionProbs = FloatArray(metaModelNumClasses) { 1f } + metaInputBuffer = FloatBuffer.allocate(metaModelInputLength) + + } + + fun runMetaInterpreter(location: Location) { + val dayOfYear = LocalDate.now().dayOfYear + val week = ceil( dayOfYear*48.0/366.0) //model year has 48 weeks + val lat = location.latitude.toFloat() + val lon = location.longitude.toFloat() + + Handler(Looper.getMainLooper()).post { + mBinding.gps.setText(mContext.getString(R.string.latitude)+": " + (round(lat*100.0)/100.0).toString() + " / " + mContext.getString(R.string.longitude) + ": " + (round(lon*100.0)/100).toString() + " W: "+week.toInt().toString()) + } + + val weekMeta = cos(Math.toRadians(week * 7.5)) + 1.0 + + metaInputBuffer.put(0, lat) + metaInputBuffer.put(1, lon) + metaInputBuffer.put(2, weekMeta.toFloat()) + metaInputBuffer.rewind() // Reset position to beginning of buffer + val metaOutputBuffer = FloatBuffer.allocate(metaModelNumClasses) + metaOutputBuffer.rewind() + meta_interpreter.run(metaInputBuffer, metaOutputBuffer) + metaOutputBuffer.rewind() + metaOutputBuffer.get(metaPredictionProbs) // Copy data to metaPredictionProbs. + + + for (i in metaPredictionProbs.indices) { + metaPredictionProbs[i] = if (metaPredictionProbs[i] >= options.metaProbabilityThreshold) { + 1f + } else { + 0f + } + } } private fun warmUpModel() { @@ -410,12 +482,14 @@ class SoundClassifier( } if (samplesAreAllZero) { - Log.w(TAG, "No audio input: All audio samples are zero!") + Log.w(TAG, mContext.resources.getString(R.string.samples_zero)) + Handler(Looper.getMainLooper()).post { + Toast.makeText(mContext,mContext.resources.getString(R.string.samples_zero),Toast.LENGTH_SHORT).show() + } + return@task } - //scaleInputBuffer() - val t0 = SystemClock.elapsedRealtimeNanos() inputBuffer.rewind() outputBuffer.rewind() @@ -424,8 +498,14 @@ class SoundClassifier( outputBuffer.get(predictionProbs) // Copy data to predictionProbs. val probList = mutableListOf() - for (value in predictionProbs) { - probList.add( 1 / (1+kotlin.math.exp(-value)) ) //apply sigmoid + if (mBinding.checkIgnoreMeta.isChecked){ + for (value in predictionProbs) { + probList.add(1 / (1 + kotlin.math.exp(-value))) //apply sigmoid + } + } else { + for (i in predictionProbs.indices) { + probList.add( metaPredictionProbs[i] / (1+kotlin.math.exp(-predictionProbs[i])) ) //apply sigmoid + } } probList.withIndex().also { @@ -440,21 +520,11 @@ class SoundClassifier( else if (max.value < 0.65) mBinding.text1.setBackgroundResource(R.drawable.oval_holo_orange_dark) else if (max.value < 0.8) mBinding.text1.setBackgroundResource(R.drawable.oval_holo_orange_light) else mBinding.text1.setBackgroundResource(R.drawable.oval_holo_green_light) - if (audioGain==0f) { - mBinding.gainTextview.setText(mContext.resources.getString(R.string.gain)+": "+mContext.resources.getString(R.string.auto)) - } else { - mBinding.gainTextview.setText(mContext.resources.getString(R.string.gain)+": "+audioGain) - } } } else { Handler(Looper.getMainLooper()).post { mBinding.text1.setText("") mBinding.text1.setBackgroundColor(mContext.resources.getColor(R.color.dark_blue_gray700)) - if (audioGain==0f) { - mBinding.gainTextview.setText(mContext.resources.getString(R.string.gain)+": "+mContext.resources.getString(R.string.auto)) - } else { - mBinding.gainTextview.setText(mContext.resources.getString(R.string.gain)+": "+audioGain) - } } } } @@ -464,58 +534,6 @@ class SoundClassifier( } } - // Multiply with audioGain or auto scale - private fun scaleInputBuffer() { - var cliping = false - var scaleFactor = audioGain - - if (audioGain == 0f) { // auto scale if gain is 0 - // Find the maximum absolute value in the buffer - var maxAbsInputValue = Float.MIN_VALUE - for (i in 0 until inputBuffer.capacity()) { - val value = Math.abs(inputBuffer.get(i)) - if (value > maxAbsInputValue) { - maxAbsInputValue = value - } - } - - // Calculate the scaling factor - scaleFactor = if (maxAbsInputValue != 0.0f) { - (Short.MAX_VALUE-1).toFloat() / maxAbsInputValue - } else { - 1.0f // Handle the case where all values are already 0 - } - } - // Scale each element in the buffer - for (i in 0 until inputBuffer.capacity()) { - var scaledValue = inputBuffer.get(i) * scaleFactor - - if (scaledValue > 32767){ - scaledValue = 32767f - cliping = true - } - else if (scaledValue < -32767) { - scaledValue = -32767f - cliping = true - } - - inputBuffer.put(i, scaledValue) - } - - // Reset position to 0 before using the buffer - inputBuffer.rewind() - - Handler(Looper.getMainLooper()).post { - if (cliping) { - mBinding.errorText.setText(mContext.getString(R.string.error_too_lound)) - mBinding.errorText.setBackgroundColor(mContext.resources.getColor(android.R.color.holo_red_dark)) - } else { - mBinding.errorText.setText("") - mBinding.errorText.setBackgroundColor(mContext.resources.getColor(R.color.dark_blue_gray700)) - } - } - } - companion object { private const val TAG = "SoundClassifier" diff --git a/app/src/main/res/drawable/ic_launcher_foreground.xml b/app/src/main/res/drawable/ic_launcher_foreground.xml index 769a5e0..9606a54 100644 --- a/app/src/main/res/drawable/ic_launcher_foreground.xml +++ b/app/src/main/res/drawable/ic_launcher_foreground.xml @@ -2,7 +2,7 @@ android:viewportWidth="21193" android:width="108dp" xmlns:android="http://schemas.android.com/apk/res/android"> - @@ -10,29 +10,26 @@ android:pathData="M7888,13821L8221,12821 13971,16321 11471,16321 10471,15321 8971,14321 7888,13821Z" android:strokeColor="#000000" android:strokeLineJoin="round" android:strokeWidth="318"/> + android:pathData="M6221,9571L5221,9321 5971,9071 6471,8071 6721,7571 6721,6821 6471,6321 6721,6321 7221,6821 7471,6070 7721,7071 8221,6821 7971,7571 8221,7321 7971,8071 8471,7821 8721,8321 9721,8821 11221,9321 13221,10071 15721,9821 16971,9821 16471,10071 16971,10071 14721,10321 13721,10571 14720,11321 13221,11071 12721,11321 12221,12071 11605,12572 10971,12821 9971,12821 8721,12571 7721,12072 6971,11321 6721,10321 6221,9571Z" + android:strokeColor="#000000" android:strokeLineJoin="round" android:strokeWidth="388"/> - - + diff --git a/app/src/main/res/drawable/ic_launcher_monochrome.xml b/app/src/main/res/drawable/ic_launcher_monochrome.xml index 7fbfb3f..1cab366 100644 --- a/app/src/main/res/drawable/ic_launcher_monochrome.xml +++ b/app/src/main/res/drawable/ic_launcher_monochrome.xml @@ -6,20 +6,17 @@ android:pathData="M7788,13921L8121,12921 13871,16421 11371,16421 10371,15421 8871,14421 7788,13921Z" android:strokeColor="#000000" android:strokeLineJoin="round" android:strokeWidth="494"/> + android:pathData="M7164,8879C7172,8906 7169,8935 7157,8964 7145,8992 7123,9019 7094,9041 7066,9064 7031,9081 6994,9091 6956,9101 6918,9104 6882,9100 6846,9095 6813,9083 6788,9064 6763,9046 6746,9022 6739,8995 6731,8968 6734,8939 6746,8910 6758,8881 6780,8855 6809,8832 6837,8810 6872,8793 6909,8783 6947,8772 6985,8769 7021,8774 7057,8779 7090,8791 7115,8809 7140,8828 7157,8852 7164,8879Z" + android:strokeColor="#000000" android:strokeLineJoin="round" android:strokeWidth="459"/> - diff --git a/app/src/main/res/drawable/icon_large.xml b/app/src/main/res/drawable/icon_large.xml new file mode 100644 index 0000000..b64f14c --- /dev/null +++ b/app/src/main/res/drawable/icon_large.xml @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + diff --git a/app/src/main/res/drawable/oval_holo_orange_light_thin.xml b/app/src/main/res/drawable/oval_holo_orange_light_thin.xml new file mode 100644 index 0000000..6a4b0a8 --- /dev/null +++ b/app/src/main/res/drawable/oval_holo_orange_light_thin.xml @@ -0,0 +1,11 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 007ff98..a482776 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -10,61 +10,86 @@ android:layout_height="match_parent" android:orientation="vertical"> - - - - - - + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 8179203..731bf09 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -1,6 +1,7 @@ - Zu laut! - Verstärkung - auto + Keine Audiodaten: Alle Werte sind Null! + Ort und Datum ignorieren + Lat + Lon \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 0fe4465..f6da4b1 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1,7 +1,8 @@ whoBIRD - Too loud! - Gain - auto + No audio input: All audio samples are zero! + Ignore location and date + Lat + Lon \ No newline at end of file diff --git a/fastlane/metadata/android/en-US/images/icon.png b/fastlane/metadata/android/en-US/images/icon.png index 44faf2059bf3ad5d78cd1ede9261bce1c66a866b..6f8c580f3cdcdf7d3ccea93353fadc92f1d5b359 100644 GIT binary patch literal 41919 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 literal 37344 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�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 a9-}4yU7*(4s{D(Be^=D6sg