技术教程教程
最新文章乐视2高通版x528刷入类原生过程
前言前段时间无聊突然想起床头柜里还有一台小学时社长送的手机,虽然屏幕碎了不少,但是还能用。
让我惊叹的是,16年的机有指纹和人脸识别,支持红外遥控,用起来还算流畅。
不过原来的EUI太过臃肿,自带应用一大堆。贾老板都跑路了还有广告推给你。
于是萌生了给它刷类原生的想法。
注意事项
双清需要清除手机数据!请提前备份!!!
刷机有风险,请小心谨慎!造成的后果请自行承担!!!
本文多图预警,因为多为手机截图,所以用html的语法控制了图片的大小,可能在手机端看起来会有些许小。
所有文件资源都在文末。
解bl锁
去设置里找到开发者选项,打开usb调试和oem解锁。
打不开怎么办
我在打开的时候发现,无论你在开发者选项里做任何操作,退出再进入之后选项都会被还原。在无可奈何的时候想到是不是这个系统的问题,然后果断去恢复出厂设置,竟然还要验证乐视账号。如果你也忘记了的话,那就关机状态下进去官方rec清除吧。(因为这台机子的卡槽不见了,所以开不了usb调试,不过也没关系,可以继续接下来的操作。)
...
技术教程教程
Redmi 9利用Magisk实现Root全过程
注意事项
解锁需要清除手机数据!请提前备份!!!
刷机有风险,请小心谨慎!造成的后果请自行承担!!!
本文多图预警,因为多为手机截图,所以用html的语法控制了图片的大小,可能在手机端看起来会有些许小。
所有文件资源都在文末。
本文提供的twrp只支持Redmi 9的Android 10版本!
解bl锁
前往设置-我的设备-全部参数中,连击MIUI版本,直至出现开发者选项已开启等字眼。
前往设置-更多设置-开发者选项中,找到设备解锁状态,点击下方的绑定账号和设备。
前往下载小米官方的解锁工具:工具下载地址
下载得到解锁工具后,打开、登录、清除数据、解锁…
当解锁成功后,再进去开发者选项中即可看到已解锁:
刷入twrp
提前将magisk包放入手机:
打开秋之盒,点击右下角的ADB命令行,选择CMD:
手机在关机状态下按电源键+音量减,进入Bootloader模式:
在cmd中输入以下指令,其中xxx.img为你的twrp文件路径,一般情况下直接将文件拖进黑窗即可得到路径:
1fastboot flash ...
技术教程教程
Redmi 9卡刷降级MIUI版本
注意事项
降级操作需要清除手机数据!请提前备份!!!
刷机有风险,请小心谨慎!造成的后果请自行承担!!!
本文提到的文件路径不一定通用,请自行寻找或变通。
准备工作需要确认你的MIUI版本是否为当前最新版本,如果不是需要更新至最新版本才可继续接下来的步骤。
刷包过程
确认为最新版本后,就可以进入设置-我的设备-MIUI版本,点击右上角的三个点,点击下载最新完整包。
等待进度跑完后,可以在/sdcard/Download/downloaded-rom文件夹中找到下载的最新完整包,先不动。
在小米社区的Redmi 9圈子的置顶帖中可以找到历史版本ROM的下载地址,找到你想退回的版本,下载卡刷包。
当下载完成后,一般可以在/sdcard/Download/路径下找到文件,此时将后下载的降级版本包文件名复制为最新完整包的文件名称。
回到版本更新页面,右上角手动选择安装包,选择第一个下载的最新完整包,当校验完成出现以下界面时,不要点击,打开文件管理器将后下载的降级版本包移动到最新完整包的文件夹中,出现提示重复选择替换。
可以 ...
人工智能
使用Mind+部署kmodel模型至Maixduino板
准备工作打开Mind+,左下角扩展中在主控板中选择Maixduino,在功能模块中选择人工智能。
具体过程
初始化板子的屏幕和摄像头:
新建classes,anchor,task三个变量,并初始化网络模型:
将classes变量赋值为先前标注时设置的label名
每个label名需用英文状态下的引号引起来,用逗号分隔,用中括号括起来,如["Un_Masks","Masks"]
将anchor变量赋值为模型的锚点:
锚点可以在线上部署的main.py文件中复制得到:
将task变量赋值为模型的路径,如/sd/***.kmodel
将相机获取到的图像赋值给变量并显示在屏幕上,同时运行网络模型:
当这个网络模型为真时,即识别到目标后,使用变量i从模型中遍历出目标的信息。获取识别对象的坐标并将其框出并重新显示在屏幕上:
判断识别对象的标识号,0即为第二步中classes变量的第一位:
完整代码
Hexo博客技巧
Hexo博客技巧:使用npm搭建图床
前言前段时间jsdelivr全面崩掉之后,之前利用GitHub+JsDelivr方案搭建的图床几乎全线崩溃,打开博客全部都是404:
于是打算研究一下有没有替代jsd方案的图床,并且重要的是能白嫖()
详细过程注册账号首先注册一个npm账号:npm注册地址
新建仓库新建一个GitHub仓库存储图片。(已有跳过)
clone将仓库clone到本地:
1git clone git@github.com:[username]/[reponame].git
切换源进入clone下来的文件夹,打开终端,输入以下指令切换为原生源:
1npm config set registry https://registry.npmjs.org
添加本地npm用户终端运行:
第一次使用曾经使用过1npm adduser1npm login
可以使用 npm who am I 指令查看登录状态,出现名字即为成功。
初始化npm运行npm初始化指令,打包图床,按照要求配置即可:
1npm init
需要确认你的包名是否已有人使用,可以在 https://www.npmjs.com/ 搜索相 ...
技术教程
批量搜索替换多文件内容
前言前段时间jsdelivr全部挂了,导致博客的图床和静态资源全部挂掉,场面一度尴尬。
昨天琢磨了一下关于用npm做图床的教程,成功捣鼓出来。
值得庆幸的是,jsdelivr的引用链接和npm差别不大,后面都是带文件夹和文件名,于是可以直接全部替换之前的链接。
于是找了下关于多文件替换的教程,作个总结。
VS Code首先将所有需要替换的文件拉进一个文件夹中,将其添加进vs的工作区:
然后按下Ctrl+Shift+F,出现搜索框,点击左侧的三角符号,出现替换框:
在上方输入原本的内容,下方输入需要替换的内容,检查一下替换是否正确,点击右侧的全部替换:
大功告成!
Notepad放进一个文件夹中:
按照步骤即可:
参考链接
https://stackoverflow.com/questions/32897659/visual-studio-code-replace-multiple-files-at-once
https://blog.csdn.net/weixin_43269414/article/details/107839575
人工智能
使用Mx_Yolo_v3训练K210模型文件
一、功能介绍目前提供两种训练:
目标分类: 识别图片所属的种类, 比如图中是苹果还是杯子, 没有坐标。 如下图,识别到了苹果,是苹果的概率为0.8
目标检测: 检测图片中物体的位置, 并且输出这个物体的坐标和物体大小(即框出认识的物体)。 如下图, 识别到了苹果, 并且框出了位置, 是苹果的概率为0.8
二、确定方案
首先确定要训练哪种模型。在上面支持的模型中选择一个,如果不需要检测物体坐标, 用目标分类, 需要坐标则目标识别,两者处理数据要做的工作和格式都不一样, 后者会复杂很多。
确定分类。 包括分类数量, 具体分类。 比如这里以识别红色小球和玩具为例:
所以共两个分类: ball 和 toy, 我们也称之为标签(label),
注意!分类名(标签/label)只能使用英文字符和下划线
确定分辨率。 图片的分辨率也十分重要,不管是在采集、训练,还是使用时, 都需要十分注意, 稍不注意,模型可能就无法使用或者识别精度低。以下为Maixhub目前支持的分辨率,其它分辨率将会训练失败:
目标分类、目标检测: 224x224(推荐)
确定采集数据集(这里就是所有 ...
技术教程
使用WinNTSetup重装系统
使用过程
进入PE,找到WinNTSetup并打开:
在Windows安装文件的位置处选择到系统的iso镜像路径。一般是install.wim
引导驱动器中选择到系统盘,一般是C盘。
安装驱动器的位置,如果有UEFI引导分区(一般为Z盘),则选那个,否则选系统盘。
下面的选项中可以选择需要安装的Windows版本。
按照理想状态下,右侧的三个灯需要全绿才行。
格式化C盘
引导代码BCD中选择ALL
总结
挂载或解压原版ISO。
第二张图中,第一个选sources\install.wim,第二个选系统盘(可能是C盘);第三个,如果有UEFI引导分区(一般为Z盘),就选那个,否则选系统盘。
如果系统盘没有格式化清空,必须格式化,否则报错。
点开始安装。出现修复引导的界面,直接点确定。
大功告成静待一段时间自动重启即可。
最后这是第一篇成功使用npm图床的博文!
Hexo博客技巧
Hexo:Butterfly添加天气组件
教程链接花猪:Hexo在顶部增加天气小部件
实际效果https://amnesia-f.github.io/
即在博客的左上角,可以查看当地的天气状况。
生成插件打开和风天气插件网站,注册一个账号,接着创建一个天气简约插件:
随意起一个插件名称,根据你的需要调整下面的选项:
生成代码后,我们只需复制两个<script>之间的代码,即红框内框出来的代码块:
12345678910111213141516171819202122WIDGET = { "CONFIG": { "modules": "01234", "background": "5", "tmpColor": "FF9900", "tmpSize": "16", "cityColor": "FFFFFF", "citySize&q ...
AppInventor
AppInventor之数据库、MQTT及导出Excel表格
准备工作AppInventor服务器:Wxbit
数据库:TinyWebDB数据库
MQTT:EasyIoT
工作过程当K210板识别到未穿校服后,会自动进行人脸识别,人脸识别的结果为班别+学号,例:865,通过串口传输到掌控板后再通过MQTT发送至App。
App接收到消息后会对消息进行分析,首先判断此人的班别,然后在对应班别的数据库里对学号匹配查找得到此人姓名。
最后将未穿校服学生的班别与姓名合并保存到TinyWebDB数据库中,同时保存至本地数据库,方便后续的导出数据操作。
具体代码MQTT连接初始化时首先连接MQTT,其中MQTT客户端组件的设置如下:
服务器端口为iot.dfrobot.com.cn:1883
客户端标识为1883
获取今日未穿校服人数首先我们需要创建一个局部变量,并赋值为今天的日期文本,可以通过调用计时器并通过当前日历获取。此举是为了简化代码,提高可读性。
接着我们获取以日期文本为标签的数据库值,其中会存在以下情况:
数据库数值为空,即今日机器未运行或没有检测到未穿校服人员;
数据库数值为1,即检测到未穿校服人员,但未对数据进行匹配。
所以我们要 ...