From 45b7fe0b5729d520b8e16d45ef8ffc8c3fada9e1 Mon Sep 17 00:00:00 2001 From: Marcus <3160876878@qq.com> Date: Wed, 15 Nov 2023 20:49:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B4=E7=90=86=E6=96=87=E4=BB=B6=E4=BD=8D?= =?UTF-8?q?=E7=BD=AE=E3=80=81=E9=A1=B9=E7=9B=AE=E7=9A=84=E5=8C=85=E7=BB=93?= =?UTF-8?q?=E6=9E=84=EF=BC=8C=E9=87=8D=E6=96=B0=E5=91=BD=E5=90=8D=E6=96=87?= =?UTF-8?q?=E4=BB=B6=EF=BC=8C=E9=87=8D=E6=96=B0=E5=AF=B9=E6=8E=A5Yolo?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/src/main/AndroidManifest.xml | 8 ++--- src/app/src/main/cpp/jni_interface.cpp | 12 +++---- .../AboutActivity.java} | 6 ++-- .../BackgroundActivity.java} | 10 ++---- .../ControlActivity.java} | 10 ++++-- .../MainActivity.java} | 26 +++++--------- .../{ => components}/MySurfaceView.java | 34 ++++++------------- .../wificar/{ => components}/RockerView.java | 2 +- .../wificar/{ => network}/SocketListener.java | 3 +- .../{ => network}/SoundSocketListener.java | 2 +- .../src/main/java/wificar/{ => yolo}/Box.java | 2 +- .../java/wificar/{ => yolo}/Constant.java | 2 +- .../java/wificar/{ => yolo}/KeyPoint.java | 2 +- .../java/wificar/{ => yolo}/SimplePose.java | 2 +- .../main/java/wificar/{ => yolo}/YOLOv5.java | 4 ++- .../src/main/res/layout/activity_settings.xml | 2 +- src/app/src/main/res/layout/myvideo.xml | 4 +-- 17 files changed, 54 insertions(+), 77 deletions(-) rename src/app/src/main/java/wificar/{SettingsActivity.java => activity/AboutActivity.java} (84%) rename src/app/src/main/java/wificar/{BgPictureShowActivity.java => activity/BackgroundActivity.java} (93%) rename src/app/src/main/java/wificar/{MyVideo.java => activity/ControlActivity.java} (97%) rename src/app/src/main/java/wificar/{MyMainFrm.java => activity/MainActivity.java} (83%) rename src/app/src/main/java/wificar/{ => components}/MySurfaceView.java (96%) rename src/app/src/main/java/wificar/{ => components}/RockerView.java (99%) rename src/app/src/main/java/wificar/{ => network}/SocketListener.java (98%) rename src/app/src/main/java/wificar/{ => network}/SoundSocketListener.java (98%) rename src/app/src/main/java/wificar/{ => yolo}/Box.java (98%) rename src/app/src/main/java/wificar/{ => yolo}/Constant.java (94%) rename src/app/src/main/java/wificar/{ => yolo}/KeyPoint.java (98%) rename src/app/src/main/java/wificar/{ => yolo}/SimplePose.java (93%) rename src/app/src/main/java/wificar/{ => yolo}/YOLOv5.java (91%) diff --git a/src/app/src/main/AndroidManifest.xml b/src/app/src/main/AndroidManifest.xml index 1f52d28..731986b 100644 --- a/src/app/src/main/AndroidManifest.xml +++ b/src/app/src/main/AndroidManifest.xml @@ -21,11 +21,11 @@ android:theme="@style/Theme.AppCompat.Light.NoActionBar" android:label="@string/app_name" > @@ -35,11 +35,11 @@ diff --git a/src/app/src/main/cpp/jni_interface.cpp b/src/app/src/main/cpp/jni_interface.cpp index bc5d971..2bb29a6 100644 --- a/src/app/src/main/cpp/jni_interface.cpp +++ b/src/app/src/main/cpp/jni_interface.cpp @@ -56,7 +56,7 @@ JNIEXPORT void JNI_OnUnload(JavaVM *vm, void *reserved) { Yolov5 ********************************************************************************************/ extern "C" JNIEXPORT void JNICALL -Java_wificar_YOLOv5_init(JNIEnv *env, jclass, jobject assetManager, jboolean useGPU) { +Java_wificar_yolo_YOLOv5_init(JNIEnv *env, jclass, jobject assetManager, jboolean useGPU) { if (YoloV5::detector != nullptr) { delete YoloV5::detector; YoloV5::detector = nullptr; @@ -68,7 +68,7 @@ Java_wificar_YOLOv5_init(JNIEnv *env, jclass, jobject assetManager, jboolean use } extern "C" JNIEXPORT jobjectArray JNICALL -Java_wificar_YOLOv5_detect(JNIEnv *env, jclass, jobject image, jdouble threshold, jdouble nms_threshold) { +Java_wificar_yolo_YOLOv5_detect(JNIEnv *env, jclass, jobject image, jdouble threshold, jdouble nms_threshold) { auto result = YoloV5::detector->detect(env, image, threshold, nms_threshold); auto box_cls = env->FindClass("wificar/Box"); @@ -86,7 +86,7 @@ Java_wificar_YOLOv5_detect(JNIEnv *env, jclass, jobject image, jdouble threshold // ***************************************[ Yolov5 Custom Layer ]**************************************** extern "C" JNIEXPORT void JNICALL -Java_wificar_YOLOv5_initCustomLayer(JNIEnv *env, jclass, jobject assetManager, jboolean useGPU) { +Java_wificar_yolo_YOLOv5_initCustomLayer(JNIEnv *env, jclass, jobject assetManager, jboolean useGPU) { if (YoloV5CustomLayer::detector != nullptr) { delete YoloV5CustomLayer::detector; YoloV5CustomLayer::detector = nullptr; @@ -98,7 +98,7 @@ Java_wificar_YOLOv5_initCustomLayer(JNIEnv *env, jclass, jobject assetManager, j } extern "C" JNIEXPORT jobjectArray JNICALL -Java_wificar_YOLOv5_detectCustomLayer(JNIEnv *env, jclass, jobject image, jdouble threshold, jdouble nms_threshold) { +Java_wificar_yolo_YOLOv5_detectCustomLayer(JNIEnv *env, jclass, jobject image, jdouble threshold, jdouble nms_threshold) { auto result = YoloV5CustomLayer::detector->detect(env, image, threshold, nms_threshold); auto box_cls = env->FindClass("wificar/Box"); @@ -197,7 +197,7 @@ Java_wificar_NanoDet_detect(JNIEnv *env, jclass, jobject image, jdouble threshol ********************************************************************************************/ extern "C" JNIEXPORT void JNICALL -Java_wificar_SimplePose_init(JNIEnv *env, jclass clazz, jobject assetManager, jboolean useGPU) { +Java_wificar_yolo_SimplePose_init(JNIEnv *env, jclass clazz, jobject assetManager, jboolean useGPU) { if (SimplePose::detector != nullptr) { delete SimplePose::detector; SimplePose::detector = nullptr; @@ -209,7 +209,7 @@ Java_wificar_SimplePose_init(JNIEnv *env, jclass clazz, jobject assetManager, jb } extern "C" JNIEXPORT jobjectArray JNICALL -Java_wificar_SimplePose_detect(JNIEnv *env, jclass clazz, jobject image) { +Java_wificar_yolo_SimplePose_detect(JNIEnv *env, jclass clazz, jobject image) { auto result = SimplePose::detector->detect(env, image); auto box_cls = env->FindClass("wificar/KeyPoint"); diff --git a/src/app/src/main/java/wificar/SettingsActivity.java b/src/app/src/main/java/wificar/activity/AboutActivity.java similarity index 84% rename from src/app/src/main/java/wificar/SettingsActivity.java rename to src/app/src/main/java/wificar/activity/AboutActivity.java index d84c09b..c00e6a4 100644 --- a/src/app/src/main/java/wificar/SettingsActivity.java +++ b/src/app/src/main/java/wificar/activity/AboutActivity.java @@ -1,17 +1,15 @@ -package wificar; +package wificar.activity; import androidx.appcompat.app.AppCompatActivity; -import android.content.Intent; import android.os.Bundle; -import android.view.View; import android.view.Window; import android.view.WindowManager; import android.widget.Button; import my.wificar.R; -public class SettingsActivity extends AppCompatActivity { +public class AboutActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { diff --git a/src/app/src/main/java/wificar/BgPictureShowActivity.java b/src/app/src/main/java/wificar/activity/BackgroundActivity.java similarity index 93% rename from src/app/src/main/java/wificar/BgPictureShowActivity.java rename to src/app/src/main/java/wificar/activity/BackgroundActivity.java index 62709f8..9384264 100644 --- a/src/app/src/main/java/wificar/BgPictureShowActivity.java +++ b/src/app/src/main/java/wificar/activity/BackgroundActivity.java @@ -1,6 +1,4 @@ -package wificar; - -import static android.content.pm.ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE; +package wificar.activity; import android.app.Activity; import android.content.Context; @@ -13,8 +11,6 @@ import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; -import android.view.Window; -import android.view.WindowManager; import android.view.animation.AnimationUtils; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; @@ -32,7 +28,7 @@ import java.util.List; import my.wificar.R; -public class BgPictureShowActivity extends Activity implements +public class BackgroundActivity extends Activity implements AdapterView.OnItemSelectedListener, ViewSwitcher.ViewFactory { /* * @@ -75,7 +71,7 @@ public class BgPictureShowActivity extends Activity implements g.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView parent, View v, int position, long id) { - Toast.makeText(BgPictureShowActivity.this, "" + (position + 1) + "ͼƬ", Toast.LENGTH_SHORT).show(); + Toast.makeText(BackgroundActivity.this, "" + (position + 1) + "ͼƬ", Toast.LENGTH_SHORT).show(); } }); } catch (Exception e) { diff --git a/src/app/src/main/java/wificar/MyVideo.java b/src/app/src/main/java/wificar/activity/ControlActivity.java similarity index 97% rename from src/app/src/main/java/wificar/MyVideo.java rename to src/app/src/main/java/wificar/activity/ControlActivity.java index a3d7348..7bccbfc 100644 --- a/src/app/src/main/java/wificar/MyVideo.java +++ b/src/app/src/main/java/wificar/activity/ControlActivity.java @@ -1,8 +1,7 @@ -package wificar; +package wificar.activity; import android.app.Activity; import android.content.Intent; -import android.os.AsyncTask; import android.os.Bundle; import android.os.StrictMode; import android.util.Log; @@ -29,8 +28,13 @@ import java.util.Timer; import java.util.TimerTask; import my.wificar.R; +import wificar.Configuration; +import wificar.components.MySurfaceView; +import wificar.components.RockerView; +import wificar.network.SocketListener; +import wificar.network.SoundSocketListener; -public class MyVideo extends Activity { +public class ControlActivity extends Activity { public static String CameraIp; public static String CtrlIp; public static String CtrlPort; diff --git a/src/app/src/main/java/wificar/MyMainFrm.java b/src/app/src/main/java/wificar/activity/MainActivity.java similarity index 83% rename from src/app/src/main/java/wificar/MyMainFrm.java rename to src/app/src/main/java/wificar/activity/MainActivity.java index f3db26c..8451dac 100644 --- a/src/app/src/main/java/wificar/MyMainFrm.java +++ b/src/app/src/main/java/wificar/activity/MainActivity.java @@ -1,31 +1,21 @@ -package wificar; -/*СRƼwww.xiao-r.com - * йFPV-WIFI˴⹤ңwww.wifi-robots.comԴԴӵȨ - * Դûѧϰ֮ãϽҵIJ - * 緢ȨΪСRƼͨ;ߣ - * */ +package wificar.activity; + import android.app.Activity; import android.content.Intent; -import android.graphics.Bitmap; -import android.graphics.Canvas; -import android.graphics.Color; -import android.graphics.Paint; import android.os.Bundle; import android.view.KeyEvent; -import android.view.View; import android.view.Window; import android.view.WindowManager; -import android.widget.Button; -import android.widget.EditText; import android.widget.LinearLayout; import android.widget.Toast; -import java.util.Random; - import my.wificar.R; +import wificar.Configuration; +import wificar.yolo.SimplePose; +import wificar.yolo.YOLOv5; -public class MyMainFrm extends Activity { +public class MainActivity extends Activity { // EditText CameraIP, ControlIP, Port; LinearLayout Button_go; @@ -76,7 +66,7 @@ public class MyMainFrm extends Activity { intent.putExtra("Is_Scale", true); //IntentҪActivity - intent.setClass(MyMainFrm.this, MyVideo.class); + intent.setClass(MainActivity.this, ControlActivity.class); //ͨIntentһActivity startActivity(intent); }); @@ -92,7 +82,7 @@ public class MyMainFrm extends Activity { intent.putExtra("Is_Scale", true); //IntentҪActivity - intent.setClass(MyMainFrm.this, SettingsActivity.class); + intent.setClass(MainActivity.this, AboutActivity.class); //ͨIntentһActivity startActivity(intent); }); diff --git a/src/app/src/main/java/wificar/MySurfaceView.java b/src/app/src/main/java/wificar/components/MySurfaceView.java similarity index 96% rename from src/app/src/main/java/wificar/MySurfaceView.java rename to src/app/src/main/java/wificar/components/MySurfaceView.java index 5c7acef..90648bf 100644 --- a/src/app/src/main/java/wificar/MySurfaceView.java +++ b/src/app/src/main/java/wificar/components/MySurfaceView.java @@ -1,47 +1,27 @@ -package wificar; -/*СRƼwww.xiao-r.com - * йFPV-WIFI˴⹤ңwww.wifi-robots.comԴԴӵȨ - * Դûѧϰ֮ãϽҵIJ - * 緢ȨΪСRƼͨ;ߣ - * */ +package wificar.components; import android.Manifest; import android.content.Context; import android.content.Intent; -import android.content.pm.PackageManager; -import android.database.Cursor; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Color; -import android.graphics.ImageFormat; -import android.graphics.Matrix; import android.graphics.Paint; -import android.graphics.Rect; -import android.graphics.YuvImage; import android.graphics.drawable.BitmapDrawable; import android.net.Uri; -import android.os.Bundle; import android.os.Environment; import android.os.Handler; import android.os.Message; import android.util.AttributeSet; import android.util.DisplayMetrics; import android.util.Log; -import android.util.Size; import android.view.SurfaceHolder; import android.view.SurfaceHolder.Callback; import android.view.SurfaceView; -import android.widget.ImageView; import android.widget.Toast; -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.core.app.ActivityCompat; -import androidx.lifecycle.LifecycleOwner; - import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; @@ -50,13 +30,19 @@ import java.io.InputStream; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; -import java.nio.ByteBuffer; import java.util.Random; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.atomic.AtomicBoolean; import my.wificar.R; +import wificar.Configuration; +import wificar.activity.ControlActivity; +import wificar.yolo.Box; +import wificar.yolo.Constant; +import wificar.yolo.KeyPoint; +import wificar.yolo.SimplePose; +import wificar.yolo.YOLOv5; import wseemann.media.FFmpegMediaMetadataRetriever; public class MySurfaceView extends SurfaceView implements Callback { @@ -74,12 +60,12 @@ public class MySurfaceView extends SurfaceView implements Callback { private Bitmap mBitmap; private boolean isThreadRunning = true; - private MyVideo activity; + private ControlActivity activity; private MySurfaceView floatingView; public MySurfaceView(Context context, AttributeSet attrs) { super(context, attrs); - activity = (MyVideo) context; + activity = (ControlActivity) context; Constant.context = context; initialize(); p = new Paint(); diff --git a/src/app/src/main/java/wificar/RockerView.java b/src/app/src/main/java/wificar/components/RockerView.java similarity index 99% rename from src/app/src/main/java/wificar/RockerView.java rename to src/app/src/main/java/wificar/components/RockerView.java index ed48852..c57cd40 100644 --- a/src/app/src/main/java/wificar/RockerView.java +++ b/src/app/src/main/java/wificar/components/RockerView.java @@ -1,4 +1,4 @@ -package wificar; +package wificar.components; import android.app.Activity; import android.content.Context; diff --git a/src/app/src/main/java/wificar/SocketListener.java b/src/app/src/main/java/wificar/network/SocketListener.java similarity index 98% rename from src/app/src/main/java/wificar/SocketListener.java rename to src/app/src/main/java/wificar/network/SocketListener.java index be56b01..0572bd8 100644 --- a/src/app/src/main/java/wificar/SocketListener.java +++ b/src/app/src/main/java/wificar/network/SocketListener.java @@ -1,4 +1,4 @@ -package wificar; +package wificar.network; import android.app.Activity; import android.content.Intent; @@ -20,6 +20,7 @@ import java.io.InputStream; import java.io.OutputStream; import my.wificar.R; +import wificar.Configuration; public class SocketListener { private Activity activity; diff --git a/src/app/src/main/java/wificar/SoundSocketListener.java b/src/app/src/main/java/wificar/network/SoundSocketListener.java similarity index 98% rename from src/app/src/main/java/wificar/SoundSocketListener.java rename to src/app/src/main/java/wificar/network/SoundSocketListener.java index baab1a5..7a0945e 100644 --- a/src/app/src/main/java/wificar/SoundSocketListener.java +++ b/src/app/src/main/java/wificar/network/SoundSocketListener.java @@ -1,4 +1,4 @@ -package wificar; +package wificar.network; import android.app.Activity; import android.os.AsyncTask; diff --git a/src/app/src/main/java/wificar/Box.java b/src/app/src/main/java/wificar/yolo/Box.java similarity index 98% rename from src/app/src/main/java/wificar/Box.java rename to src/app/src/main/java/wificar/yolo/Box.java index 8a1aaf3..ebff2d1 100644 --- a/src/app/src/main/java/wificar/Box.java +++ b/src/app/src/main/java/wificar/yolo/Box.java @@ -1,4 +1,4 @@ -package wificar; +package wificar.yolo; import android.graphics.Color; import android.graphics.RectF; diff --git a/src/app/src/main/java/wificar/Constant.java b/src/app/src/main/java/wificar/yolo/Constant.java similarity index 94% rename from src/app/src/main/java/wificar/Constant.java rename to src/app/src/main/java/wificar/yolo/Constant.java index 7fc268c..9413abe 100644 --- a/src/app/src/main/java/wificar/Constant.java +++ b/src/app/src/main/java/wificar/yolo/Constant.java @@ -1,4 +1,4 @@ -package wificar; +package wificar.yolo; /*СRƼwww.xiao-r.com * йFPV-WIFI˴⹤ңwww.wifi-robots.comԴԴӵȨ * Դûѧϰ֮ãϽҵIJ diff --git a/src/app/src/main/java/wificar/KeyPoint.java b/src/app/src/main/java/wificar/yolo/KeyPoint.java similarity index 98% rename from src/app/src/main/java/wificar/KeyPoint.java rename to src/app/src/main/java/wificar/yolo/KeyPoint.java index 74c59eb..11ce617 100644 --- a/src/app/src/main/java/wificar/KeyPoint.java +++ b/src/app/src/main/java/wificar/yolo/KeyPoint.java @@ -1,4 +1,4 @@ -package wificar; +package wificar.yolo; public class KeyPoint { diff --git a/src/app/src/main/java/wificar/SimplePose.java b/src/app/src/main/java/wificar/yolo/SimplePose.java similarity index 93% rename from src/app/src/main/java/wificar/SimplePose.java rename to src/app/src/main/java/wificar/yolo/SimplePose.java index 64e2e1d..251e701 100644 --- a/src/app/src/main/java/wificar/SimplePose.java +++ b/src/app/src/main/java/wificar/yolo/SimplePose.java @@ -1,4 +1,4 @@ -package wificar; +package wificar.yolo; import android.content.res.AssetManager; import android.graphics.Bitmap; diff --git a/src/app/src/main/java/wificar/YOLOv5.java b/src/app/src/main/java/wificar/yolo/YOLOv5.java similarity index 91% rename from src/app/src/main/java/wificar/YOLOv5.java rename to src/app/src/main/java/wificar/yolo/YOLOv5.java index fc3a75c..09b76d7 100644 --- a/src/app/src/main/java/wificar/YOLOv5.java +++ b/src/app/src/main/java/wificar/yolo/YOLOv5.java @@ -1,8 +1,10 @@ -package wificar; +package wificar.yolo; import android.content.res.AssetManager; import android.graphics.Bitmap; +import wificar.yolo.Box; + public class YOLOv5 { static { System.loadLibrary("yolov5"); diff --git a/src/app/src/main/res/layout/activity_settings.xml b/src/app/src/main/res/layout/activity_settings.xml index 82fb6f2..a11f9e0 100644 --- a/src/app/src/main/res/layout/activity_settings.xml +++ b/src/app/src/main/res/layout/activity_settings.xml @@ -5,7 +5,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/settings_background" - tools:context="wificar.SettingsActivity"> + tools:context="wificar.activity.AboutActivity">