史上最新最全的ADB命令行

2023-05-16

Android开发工具系列目录

  1. Android项目中Git工具的使用
  2. 史上最全Git命令使用手冊
  3. 史上最全的ADB命令行
  4. Android中的su命令使用
  5. Postman测试WebService接口

adb操作及命令

  • 一、ADB的认识
    • 1. ADB组成
    • 2. ADB 通信原理
    • 3. ADB连接方式
    • 4. 手机IP确认
  • 二、ADB的安装
  • 三、ADB命令
    • 1. adb 普通命令
      • 1) ADB信息
      • 2)操作类
      • 3 ) ADB 远程
      • 4) log 命令
    • 2. adb shell命令
      • 1) adb shell am
      • 2)shell pm
      • 3) shell input
      • 4)设备信息
      • 5)进程、Service及状态
      • 6)shell 文件操作
      • 7)其他命令
  • 四、 KEYCODE表
  • 总结

博客创建时间:2020.06.06
博客更新时间:2022.09.25

以Android studio build=7.0.0,SDKVersion 31来分析讲解。如图文和网上其他资料不一致,可能是别的资料版本较低而已。


一、ADB的认识

Android开发对于ADB想来是不会陌生的,对于ADB的相关知识和使用我们需要熟练掌握。

1. ADB组成

Android Debug Bridge,Android调试桥接器,简称ADB,是用于管理模拟器或真机状态的万能工具。说人话就是:ADB是PC和移动终端通信的桥梁,它采用了C/S模型,由三部分组成。
借用一张图:
在这里插入图片描述
2. 服务端部分,是运行在开发用电脑上的后台进程,用于管理客户端与运行在模拟器或真机的守护进程通信。

1. adb client(客户端)
client是运行在PC端的组件,可以在命令行中运行adb命令来调用该客户端,通常的ADB插件、DDMS、豌豆荚等工具都可以调用ADB。

每当我们发起一个ADB命令时,就会开启一个client程序,client开启后就会去检测后台是否已存在server程序在运行,如无存在则开启一个adb-server进程。我们常见的打开Android Studio开发工具时,会帮你自动开启一个client。

client与模拟器是一对多的关系,连接多个手机也只有一个client。client都是通过5037端口与adb-server进行通讯的。

2. adb daemon(adb后台程序)
daemon守护进程,该组件作为一个后台进程运行在模拟器/真实Android设备中

在PC命令行中中输入的ADB命令,通过Server与daemon的通信,将命令传至daemon,实际命令是在daemon中运行。

daemon使用端口的范围是5554-5585,每个模拟器/设备连接到PC端时,总会开启这样一个后台进程(client会帮助检查),并且为其分配了两个连续的端口,比如:

  1. Emulator1, console: 5554
    偶数端口用于控制台与终端设备进行连接交互
  2. Emulator1, adb: 5555
    奇数端口是用来Server与模拟器、手机进行连接通信的

因为每个设备都分一组两个端口,所以adb连接手机的最大数量为16。

3. adb server(服务器)
Server,该组件管理客户端和后台程序之间的通信,作为一个后台的程序运行在开发PC端。当一个server开启的时候,会自动绑定并且监听5037端口,接收client通过该端口发送过来的命令。
同时server还会对5555-5585间的奇数端口进行扫描,进行对已连接设备的定位。server将client中命令传至daemon.

2. ADB 通信原理

ADB组件是通过TCP/IP协议建立长连接实现通信的。其通信流程大致如下:

  1. ADB客户端启动后,会主动寻找并尝试连接ADB Server服务进程,如果Server未启动,则client启动一个server。 随后clent 与server 通过本地端口5037进行通信。
  2. Server通过扫描5555—5585之间的奇数端口来搜寻模拟器或手机,一旦发现adb daemon,则通过该端口建立连接。
  3. Server可以从多个client接收ADB命令,然后将命令传至连接的多个daemon,在daemon中运行命令达到控制手机/模拟器的效果。

3. ADB连接方式

1) 手机数据线连接
我们Android手机线一般有两种,USB type-C和USB micro。这种方式很常见,不说了。
USB micro数据口
在这里插入图片描述
USB type-C数据口
在这里插入图片描述

2) USB type-A数据线连接
首选认识下USB type-A数据口,它就是我们常见电脑上的USB口,见图如下:
在这里插入图片描述
这种连接方式一般Android开发碰不到,他在一些Android柜台机,广告机中有可能是这样连接的。这种连接线两头都是一模一样的这种USB type-A数据口,常被叫做双公头数据线。
在这里插入图片描述在这里插入图片描述
一般都是如上设置,即可建立连接

3) 网络连接
网络连接就是通过让Android终端与电脑处于同一网络内,将设备设置为TCP模式进行连接。让Android 设备与PC处于同一网络,可以是通过网线或者wifi连接。
手机要打开开发者模式

其连接流程如下:

  1. 检查网络同一
    在电脑上cmd命令行工具中ping Android设备IP,如果未丢失数据,说明两者在同一网络中。
    在这里插入图片描述

  2. 设置设备TCP模式
    在adb.exe所在目录输入命令 adb tcpip 5555,将Android设备设置成TCP/IP连接模式
    在这里插入图片描述
    如果失败了,一般是adb 被别的程序占用了,一般要关掉如360手机助手,豌豆荚等程序然后重启adb

  3. 连接设备
    输入命令 adb connect 192.168.31.34,如图连接成功,拔掉数据线你会发现设备与PC还是连着的。
    在这里插入图片描述
    如果connect被拒绝,关闭干扰软件,关闭ADB,重新连接。

**注意:**
1) 想要断开连接的命令是adb disconnect 192.168.31.34
2) wifi连接模式至少需要让Android设备与PC用数据线连接一次
3)我们常用的Android studio wifi连接插件其实就是基于如上原理,只是自动帮我们完成了一些ADB命令的键入,直接按钮点击连接就好。

我用华为Honor 9测试,插件 ADB Wifi好像无法使用,插件Android Wifi ADB布局画面也不美观。Android studio进行开发,那么我给你推荐WIFI ADB ULTIMATE这款wifi连接插件,界面美观,功能强大。

4. 手机IP确认

有时候你可能不知道手机的IP地址是多少,这时候有5种方法可以获取:

  1. 通过路由器管理页面查看WLAN,查看IP地址
  2. 通过手机设置》关于手机查看
    在这里插入图片描述
    在这里插入图片描述
  3. 通过adb命令 adb shell ifconfig wlan0,获取连接的手机IP
    在这里插入图片描述
  4. 通过adb命令 adb shell netcfg,获取连接的手机IP
    在这里插入图片描述
  5. 在wifi 设置页面中查看IP地址
    在这里插入图片描述
    在这里插入图片描述

二、ADB的安装

如果只是想对ADB工具及命令进行了解,而不想安装类似Android Studio这样的工具,那么请下载ADB

比如我下载文件后解压放在E盘,那么使用步骤:

  1. 打开cmd,输入命令 E:
  2. 输入 cd E:\adb_1.0.41,进入adb目录中
  3. 输入adb version,如下,adb的信息如下,想要进行其他操作,请查看下面的ADB命令
    在这里插入图片描述

三、ADB命令

注意:
1. 《 》 代表内容需要自己更具实际情况更改
2. 【 】 代表内容是可选项,可以不填写

1. adb 普通命令

adb -s / -e / -d 指定对某个连接成功的设备执行命令
-s: 指定要操作的设备;
-e: 默认操作模拟器;
-d:默认操作硬件设备;

-s、-e、-d 是跟在adb后面的限制符,如adb -s emulator-5556 install helloWorld.apk
这条命令就是往emulator-5556模拟器安装apk文件。 它的原始普通命令是 adb install helloWorld.apk

1) ADB信息

命令模式说明示例
adb pwd打印当前路径
adb ls查看当前
adb devices列举当前连接的调试设备
adb get-serialno获取当前连接设备信息, 只能当连接一个设备时使用,并拿到设备的序列号
adb get-state获取设备的状态 ,有 3 钟device:设备正常连接 ;offline:连接出现异常,设备无响应 ; unknown:没有连接设备
adb bugreport查看bug报告
adb help调出adb命令提示

2)操作类

命令模式说明示例
adb pull -a remote-path local-path从设备拷贝文件或文件夹到电脑-a:保留文件时间戳及属性 ;remote-path:为手机端文件路径; local-path:为文件复制到的路径
adb push loacal-path remote-path将文件或文件夹(包括文件夹的子目录)拷贝到设备adb push /Users/littlejie/Desktop/log.txt /dev
adb reboot重启机器adb -s xxx reboot 重启连接成功的指定设备。
adb reboot recovery重启进入recovery模式
adb reboot bootloader重启到bootloader,即刷机模式
adb forward tcp:8000 tcp:9000执行此命令后, PC端的8000端口会被adb监听, 这个时候我们只需要往8000端口写数据, 这个数据就会发送到手机端的9000端口上一般用来主机和移送设备进行额外的数据传输
  1. adb remount 将system分区重新挂载为可读写分区

3 ) ADB 远程

命令模式说明示例
adb version查看版本
adb tcpip 5555设置连接设备为TCP模式
adb usb切换到usb模式
adb start/kill -server启动/杀死adb 的Server
adb connect/disconnect 《192.168.1.101》通过局域网远程调试ADB终端
adb install 【-r/-s】 test.apk安装apk文件-r:保留数据和缓存文件,重新安装apk ; -s:安装apk到sd卡
adb uninstall 【-k】 com.tencent.mobileqq卸载apk有-k 则不删除程序运行所产生的数据和缓存目录。

4) log 命令

adb logcat -* * 代表不同flag,如下图

标识说明
"-s"选项设置输出日志的标签, 只显示该标签的日志;
"-f"选项将日志输出到文件, 默认输出到标准输出流中, -f 参数执行不成功;
"-r"选项 :按照每千字节输出日志, 需要 -f 参数, 不过这个命令没有执行成功;
"-n"选项设置日志输出的最大数目, 需要 -r 参数, 这个执行 感觉 跟 adb logcat 效果一样;
"-v"选项设置日志的输出格式, 注意只能设置一项;
"-c"选项清空所有的日志缓存信息;
"-d"选项将缓存的日志输出到屏幕上, 并且不会阻塞;
"-t"选项输出最近的几行日志, 输出完退出, 不阻塞;
"-g"选项查看日志缓冲区信息;
"-b"选项加载一个日志缓冲区, 默认是 main, 下面详解;
"-B"选项以二进制形式输出日志;

logcat定义表

命令模式说明示例
adb logcat打印信息
adb logcat | grep 【-i】显示包含的logcat ,【并忽略大小写】
adb logcat -c清楚手机的log buffer
adb logcat -b打印指定buffer的log信息
adb logcat -d读完所有log后返回,而不会一直等待
adb logcat -f输出log到指定文件
log adb logcat -s xys打印xys标签adb -s 192.168.56.101:5555 logcat -s xys 打印192.168.56.101:5555设备里的xys标签log
adb logcat -s ActivityManagerfindstr “START”** 打印在ActivityManager标签里包含start的日志
logcat -t 打印最近的指定条数count的logcat
adb logcat -v format格式化输出log

format有多种格式,如下:
adb logcat -v time 显示时间
adb logcat -v process |grep 8607 查看PID是:8607进程的日志

	brief — 显示优先级/标记和原始进程的PID (默认格式)
	process — 仅显示进程PID
	tag — 仅显示优先级/标记
	thread — 仅显示进程:线程和优先级/标记
	raw — 显示原始的日志信息,没有其他的元数据字段
	time — 显示日期,调用时间,优先级/标记,PID
	long —显示所有的元数据字段并且用空行分隔消息内容

2. adb shell命令

adb 命令是 adb 这个程序自带的一些命令,而 adb shell 则是调用的 Android 系统中的命令,这些 Android 特有的命令都放在了 Android 设备的 system/bin 目录下。想要执行shell命令,有两种方法:

  1. 先进入shell模式输入命令,如先adb shell 进入调试设备的shell 界面,然后dumpsys power
  2. 直接执行adb shell dumpsys power
    两种方式的实际效果是一摸一样的。

进入Shell模式后,如果现实"#“,说明该设备拥有root权限,如果现实”$",说明该设备未拥有root权限。
在这里插入图片描述
在这里插入图片描述


1) adb shell am

am全称activity manager,你能使用am去模拟各种系统的行为,例如去启动一个activity,强制停止进程,发送广播进程,修改设备屏幕属性等等。

命令模式说明示例
am start [options] intentam即activity manager. 该命令用来执行一些系统动作
am broadcast发送一个广播
am start -a android.settings.INPUT_METHOD_SETTINGS使用Action方式打开系统设置-输入法设置
am start -n 《包名》/.《类名》开始某个Activit或Intent
am start -n com.android.camera/.Camera}使用组件名方式启动照相机功能
am start -n 启动指定包名的应用
am start -a android.intent.action.CALL-d tel:10086打开拨号界面,并传递一个DATA_URI数据给拨号界面
am start -a android.intent.action.VIEW -d http://www.jianshu.cn/打开简书的官网页
am startservice <包名/.Service名>使用ComponentName 方式启动一个Service
am stopservice 《包名/.Service名》停止一个service
am force-stop 强制结束应用
adb shell am kill 杀死app 进程
adb shell am monitor监控程序的crash和anr错误

2)shell pm

pm全称package manager,你能使用pm命令去模拟Android行为或者查询设备上的应用等

命令模式说明示例
pm list packages [option filter ]列出当前已安装的应用包名, 根据filter可以搜索你需要的包名
pm list permission-groups查看所有可用的权限
pm list permissions [options] group查看某个权限组下边所有的权限
shell pm path 查看某个apk安装路径
pm clear 删除和这个包有关联的所有数据
pm set-install-location location改变apk默认安装位置(只能在已root设备使用,未root设备会报java.lang.SecurityException异常)
pm get-install-location获取系统默认安装位置
pm install test.apk安装apk
pm uninstall 《package》 卸载指定包名应用

3) shell input

这个命令可以向 Android 设备发送按键事件

命令模式说明示例
input text “发送内容”不能发送中文
input keyevent KEYCODE发送按键事件 ,KEYCODE表在文尾input keyevent KEYCODE_HOME 模拟按下Home键
input tap 对屏幕发送一个触摸事件input tap 500 500 点击屏幕上坐标为 500 500 的位置
adb shell input swipe滑动事件input swipe 800 600 100 600 从右往左滑动屏幕》

4)设备信息

KeyCode值对应按键名
亮度/sys/class/leds/lcd-backlight/brightness
CPU/sys/devices/system/cpu/cpu0/cpufreq
GPU/sys/class/ kgsl/kgsl-3d0/gpuclk
限频cat /data/pmlist.config
电流cat /sys/class/power_supply/battery/current_now
获取设备信息cat /system/build.prop 【grep】
获取手机MAC地址cat /sys/class/net/wlan0/address
查看wifi密码cat /data/misc/wifi/*.conf
获取连接设备的IP地址ifconfig wlan0
查看连接设备的IP地址netcfg
获取手机内存信息cat /proc/meminfo
获取手机存储信息df
获取手机内部存储信息df /data
获取系统版本getprop ro.build.version.release
获取系统api版本getprop ro.build.version.sdk
获取手机设备型号getprop ro.product.model
获取手机厂商名称getprop ro.product.brand
列出设备上的输入法adb shell ime list -s
查看Powerdumpsys power
获取Android设备屏幕分辨率dumpsys window (或 grep mUnrestrictedScreen)
WIFIdata/misc/wifi/wpa_supplicant.conf
持有wake_lockecho a> sys/power/wake_lock
释放wake_lockecho a> sys/power/wake_unlock
查看Wakeup_sourcecat sys/kernel/debug/wakeup_sources
Display(关闭AD)mv /data/misc/display/calib.cfg /data/misc/display/calib.cfg.bak 重启

5)进程、Service及状态

命令模式说明示例
su root获取root权限一般Android板子可以,手机一般不行
service list查看后台services信息
dumpsys services []查看正在运行的Services
dumpsys activity []查看正在运行的Activity
procrank查看运行进程
kill 366关闭或杀掉进程
ps列出当前运行的进程adb shell ps -x [PID] 查看指定进程状态
cat /proc/1460/maps查看进程的文件结构1460进程的PID
cat /proc/1460/status查看进程的状态1460进程的PID
关闭cabcecho 0 > /sys/device/virtual/graphics/fb0/cabc_onoff
打开cabcecho 3 > /sys/device/virtual/graphics/fb0/cabc_onoff

6)shell 文件操作

命令模式说明示例
ls列出目录下的文件和文件夹
du -sh *查看目录下的文件大小
cat <folder/file>查看文件内容
chmod777 设置文件的权限
cd 进入文件夹,等同于dos中的cd 命令
rename 重命名文件
rm 【 -r 】 /system/avi.apk删除指定路径文件的文件或者文件夹
mv 移动文件到新的目录
mkdir path/foldelname新建文件夹

7)其他命令

命令模式说明示例
adb shell screencap /sdcard/screen.png截图当前页面并保存到指定目录
adb shell screenrecord录屏。Android4.4 及以上才能使用
adb shell bugreport打印dumpsys、dumpstate、logcat的输出,也是用于分析错误adb shell dumpsys > D:\bugreport.log
adb shell monkey -v -p your.package.name 500跑monkeyadb -s 192.168.244.151:5555 shell monkey -v -p com.bolexim 500
adb shell top查看占用内存排序1) adb shell top -m 6 查看占用内存前6的app ; 2)adb shell top -n 1 刷新一次内存信息,然后返回
当出现read-only 且 remount命令不管用时adb shell mount -o rw,remount /
进入9008模式adb reboot edl
查看高通gpiosys/class/private/tlmm 或者 sys/private/tlmm
查看gpio占用情况sys/kernle/debug/gpio
systracesdk/tools/monitor
限频echo /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq 1497600
LPMecho N > /sys/modue/lpm_levels/parameters/sleep_disabled

四、 KEYCODE表

这个是按键与KEYCODE对应键值表如下

KeyCode值对应按键名
0KEYCODE_UNKNOWN
1KEYCODE_MENU
2KEYCODE_SOFT_RIGHT
3KEYCODE_HOME
4KEYCODE_BACK
5KEYCODE_CALL
6KEYCODE_ENDCALL
7KEYCODE_0
8KEYCODE_1
9KEYCODE_2
10KEYCODE_3
11KEYCODE_4
12KEYCODE_5
13KEYCODE_6
14KEYCODE_7
15KEYCODE_8
16KEYCODE_9
17KEYCODE_STAR
18KEYCODE_POUND
19KEYCODE_DPAD_UP
20KEYCODE_DPAD_DOWN
21KEYCODE_DPAD_LEFT
22KEYCODE_DPAD_RIGHT
23KEYCODE_DPAD_CENTER
24KEYCODE_VOLUME_UP
25KEYCODE_VOLUME_DOWN
26KEYCODE_POWER
27KEYCODE_CAMERA
28KEYCODE_CLEAR
29KEYCODE_A
30KEYCODE_B
31KEYCODE_C
32KEYCODE_D
33KEYCODE_E
34KEYCODE_F
35KEYCODE_G
36KEYCODE_H
37KEYCODE_I
38KEYCODE_J
39KEYCODE_K
40KEYCODE_L
41KEYCODE_M
42KEYCODE_N
43KEYCODE_O
44KEYCODE_P
45KEYCODE_Q
46KEYCODE_R
47KEYCODE_S
48KEYCODE_T
49KEYCODE_U
50KEYCODE_V
51KEYCODE_W
52KEYCODE_X
53KEYCODE_Y
54KEYCODE_Z
55KEYCODE_COMMA
56KEYCODE_PERIOD
57KEYCODE_ALT_LEFT
58KEYCODE_ALT_RIGHT
59KEYCODE_SHIFT_LEFT
60KEYCODE_SHIFT_RIGHT
61KEYCODE_TAB
62KEYCODE_SPACE
63KEYCODE_SYM
64KEYCODE_EXPLORER
65KEYCODE_ENVELOPE
66KEYCODE_ENTER
67KEYCODE_DEL
68KEYCODE_GRAVE
69KEYCODE_MINUS
70KEYCODE_EQUALS
71KEYCODE_LEFT_BRACKET
72KEYCODE_RIGHT_BRACKET
73KEYCODE_BACKSLASH
74KEYCODE_SEMICOLON
75KEYCODE_APOSTROPHE
76KEYCODE_SLASH
77KEYCODE_AT
78KEYCODE_NUM
79KEYCODE_HEADSETHOOK
80KEYCODE_FOCUS
81KEYCODE_PLUS
82KEYCODE_MENU
83KEYCODE_NOTIFICATION
84KEYCODE_SEARCH

用代码写这个表格太爽歪歪了。

总结

感觉是最全的ADB讲解了,从ADB的基本原理结构》安装》命令使用。如果您还没看懂或学会使用,请留言Call me,由我来帮你洗脑讲解。

ADB 的使用,尤其是ADB shell的使用对我们的Android开发帮助是很大的,尤其是越深度的发展技术路线。


相关链接

  1. Android项目中Git工具的使用
  2. 史上最全Git命令使用手冊
  3. 史上最新最全的ADB命令行
  4. Android中的su命令使用
  5. Postman测试WebService接口
  6. 2022 Android studio 最全必用插件

扩展链接:

  1. Material Design UI方案使用讲解
  2. Material TextInputLayout使用详解
  3. Room数据库,用过你才知道好

博客书写不易,您的点赞收藏是我前进的动力,千万别忘记点赞、 收藏 ^ _ ^ !

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

史上最新最全的ADB命令行 的相关文章

  • Classication of Time-Series Images Using Deep Convolutional Neural Networks[用深度卷积神经网络对时序图分类]

    今天要分享的论文是ICMV2017的一篇非常巧妙的论文 作者是 论文下载链接 xff1a https arxiv org abs 1710 00886 关于论文的源码下载链接 xff1a https sites google com sit
  • 吴恩达机器学习+deeplearning课程笔记----干货链接分享

    分享两个GitHub链接 xff0c 今天看到的 xff0c 超赞超赞不能更赞了 xff0c 答应我一定要去看好吗 不论是笔记还是github中分享的其它资源 xff0c 课程视频链接 xff0c PPT下载 xff0c 作业布置等都超棒
  • 英文写作经典指导书--学术写作必备

    以下书籍文章已整理PDF版上传至我的CSDN下载资源中 xff0c 链接 资源审核不过 尴尬 xff0c 要的朋友在博客下面留言好啦 xff0c 我看到后会发送到你邮箱哒 2018 7 23 我把压缩包上传到了百度网盘里 xff0c 需要的
  • 图像处理和机器学习有什么关系?

    一篇很不错的文章 xff0c 分享给博客的朋友们 作者 xff1a 许铁 巡洋舰科技 链接 xff1a https www zhihu com question 21665775 answer 281946017 来源 xff1a 知乎 著
  • 【CVPR 2018】Learning Rich Features for Image Manipulation Detection(图像篡改检测)

    今天来给大家分享一篇CVPR2018的论文 xff0c 检测图像的篡改区域 xff0c 用更快的R CNN网络定位图像被篡改的部分 xff0c 练就PS检测的火眼金睛 让PS痕迹无处可逃 这就将图像鉴伪 xff0c 图像取证这方面与深度学习
  • 国内免费汉语语料库-NLP

    自转载https www sohu com a 196504864 236505 xff08 一 xff09 国家语委 1国家语委现代汉语语料库http www cncorpus org 现代汉语通用平衡语料库现在重新开放网络查询了 重开后
  • 【模糊数学】模糊逻辑,隶属度,模糊逻辑应用,模糊推理过程

    update 下一篇博客我将会讲如何用这篇博客的模糊推理过程构建一个图像边缘检测的模糊推理系统 链接 xff1a https blog csdn net luolan9611 article details 94296622 这是我的一项大
  • FRR BGP 协议分析 5 -- 路由更新(2)

    处理NLRI 获取NLRI的报文长度 xff0c 填入nlris NLRI UPDATE xff0c 到现在为止nlris里面的4种类型 如果有的话 xff0c 已经全部填写到nlris数组结构体里面 然后我们遍历这个数组 xff0c 处理
  • 从输入 URL 到页面加载完成中间都经历了什么

    摘要 目录 1 chrome浏览器资源加载时序分析2 w3c提供的接口performance timing分析3 一个完整的URL 解析过程细分介绍3 1 缓存相关3 1 1 URL解析 3 2 网络相关3 2 1 DNS解析3 2 2 建
  • ALC5621声卡调试记录

    转载请注明出处 xff1a https blog csdn net luomin5417 article details 80731790 平台 imx6q 内核版本 linux 3 14 1 硬件连接 图 1 1 硬件连接 2 设备树修改
  • Pytorch转Caffe最简单方法

    由于需要移植模型到比特大陆 xff0c 华为昇腾这些平台 他们基本都支持caffe的模型 xff0c 对其他模型支持不太好 用其他方法pytorch转caffe不然就是绕道太多 xff0c 不然就是很多坑 这里记录一个最简单的方法 xff1
  • No module named ‘index‘ after install pyflann

    如题 xff0c 墙内没有 I have some problems installing pyflann in python 3 7 3 after execute pip install pyflann The installation
  • 多维 opencv Mat访问

    你看完这篇文章之后 xff0c 将学会以下知识 xff1a 二维 三维 四维等任意维度的Mat的常用建立方法 xff1b 任意维度Mat中值的索引 xff1b 以及一些Mat常用的操作 下面是对各维度矩阵的介绍 xff1a 注意 xff1a
  • H264/H265码流的编码码率设置

    一 什么是视频码率 xff1f 视频码率是视频数据 xff08 视频色彩量 亮度量 像素量 xff09 每秒输出的位数 一般用的单位是kbps 二 设置视频码率的必要性 在视频会议应用中 xff0c 视频质量和网络带宽占用是矛盾的 xff0
  • 检测图像失焦、偏色、亮度异常

    要求通过算法检测监控设备是否存在失焦 偏色 亮度异常等问题 问题本身不难 xff0c 在网上查看了一些资料 xff0c 自己也做了一些思考 xff0c 方法如下 xff1a 1 失焦检测 失焦的主要表现就是画面模糊 xff0c 衡量画面模糊
  • Jupyter 安装与使用

    最近由于项目需要 xff0c 开始学习python xff0c 然后发现一个非常有用的python交互式编辑器 xff0c 非常容易上手而且非常有用和实在 xff0c 本博文是对学习jupyter notebook的一个汇总和记录 xff0
  • C语言 print()函数 规则,格式 意思

    C语言 print 函数 规则 xff0c 格式 意思 C语言格式字符print 函数 printf后面的参数包括 格式控制字符串 和输出变量的列表 格式控制字符串 由格式控制字符和普通字符 其中前者以 开始加某一个特殊字符 比如 d为输出
  • tensorflow C++ 环境搭建及实战

    摘要 xff1a 最近在研究如何使用tensorflow c 43 43 API调用tensorflow python环境下训练得到的网络模型文件 参考了很多博客 xff0c 文档 xff0c 一路上踩了很多坑 xff0c 现将自己的方法步
  • 关于Linux进程优先级数字混乱的彻底澄清

    Linux进程的调度优先级数字会在好几个地方出现 xff1a 内核 xff0c 用户 xff0c top命令 他们各自都有自己的表示法 我们用一个实际的例子来说明 xff0c 下面在Linux写一个最简单的程序 xff1a 编译它运行 xf
  • 神经网络时间复杂度和空间复杂度(参数量计算和计算量计算)

    在梳理CNN经典模型的过程中 xff0c 我理解到其实经典模型演进中的很多创新点都与改善模型计算复杂度紧密相关 xff0c 因此今天就让我们对卷积神经网络的复杂度分析简单总结一下下 本文主要关注的是 针对模型本身的复杂度分析 xff08 其

随机推荐