人工智能——基于PicoDet使用手机行为检测

在前面有介绍过PicoDet超轻量目检算法,详情可以参看:23.基于PP-PicoDet轻量级目标检测模型——实现目标检测项目。

在工作或生活中,我们经常有些场景需要检测使用手机的行为,以便进行跟踪处理。

本文主要是使用PicoDet目标检测算法,训练一个使用手机行为检测。这里的backbone选择是:高精度骨干网络–ESNet(Enhanced ShuffleNet)

数据集:来源网络,8201张图像,VOC格式。

部分数据

98.人工智能——基于PicoDet使用手机行为检测

部分数据

模型训练

import paddlex as pdx
from paddlex import transforms as T

# 定义训练和验证时的transforms
train_transforms = T.Compose([
    T.RandomCrop(), T.RandomHorizontalFlip(), T.RandomDistort(),
    T.BatchRandomResize(
        target_sizes=[576, 608, 640, 672, 704], interp='RANDOM'), T.Normalize(
            mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
])

eval_transforms = T.Compose([
    T.Resize(
        target_size=640, interp='CUBIC'), T.Normalize(
            mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
])

# 定义训练和验证所用的数据集
train_dataset = pdx.datasets.VOCDetection(
    data_dir='train/0_phone',
    file_list='train/0_phone/train_list.txt',
    label_list='train/0_phone/labels.txt',
    transforms=train_transforms,
    shuffle=True)

eval_dataset = pdx.datasets.VOCDetection(
    data_dir='train/0_phone',
    file_list='train/0_phone/val_list.txt',
    label_list='train/0_phone/labels.txt',
    transforms=eval_transforms,
    shuffle=False)

# 初始化模型,并进行训练
num_classes = len(train_dataset.labels)
model = pdx.det.PicoDet(num_classes=num_classes, backbone='ESNet_l')

model.train(
    num_epochs=20,
    train_dataset=train_dataset,
    train_batch_size=14,
    eval_dataset=eval_dataset,
    pretrain_weights='COCO',
    learning_rate=.05,
    warmup_steps=24,
    warmup_start_lr=0.005,
    save_interval_epochs=1,
    lr_decay_epochs=[6, 8, 11],
    use_ema=True,
    save_dir='output/picodet_phone',
    use_vdl=True)

部分训练过程epoch=12/20,使用训练的结果来看,bbox_map达到90%以上,基本还是可以的。

…………
2022-05-22 10:44:07 [INFO]	[TRAIN] Epoch=12/20, Step=452/468, loss_vfl=0.503368, loss_bbox=0.268626, loss_dfl=0.182570, loss=0.954564, lr=0.017488, time_each_step=0.49s, eta=0:42:36
2022-05-22 10:44:12 [INFO]	[TRAIN] Epoch=12/20, Step=462/468, loss_vfl=0.551387, loss_bbox=0.314132, loss_dfl=0.203088, loss=1.068607, lr=0.017408, time_each_step=0.49s, eta=0:42:23
2022-05-22 10:44:15 [INFO]	[TRAIN] Epoch 12 finished, loss_vfl=0.5484224, loss_bbox=0.31818506, loss_dfl=0.19476633, loss=1.0613737 .
2022-05-22 10:44:15 [WARNING]	Detector only supports single card evaluation with batch_size=1 during evaluation, so batch_size is forcibly set to 1.
2022-05-22 10:44:15 [INFO]	Start to evaluate(total_samples=1640, total_steps=1640)...
2022-05-22 10:45:44 [INFO]	Accumulating evaluatation results...
2022-05-22 10:45:44 [INFO]	[EVAL] Finished, Epoch=12, bbox_map=90.200701 .
2022-05-22 10:45:44 [INFO]	Model saved in output/picodet_phone/best_model.
2022-05-22 10:45:44 [INFO]	Current evaluated best model on eval_dataset is epoch_12, bbox_map=90.20070097912135
2022-05-22 10:45:45 [INFO]	Model saved in output/picodet_phone/epoch_12.
2022-05-22 10:45:48 [INFO]	[TRAIN] Epoch=13/20, Step=4/468, loss_vfl=0.605212, loss_bbox=0.361655, loss_dfl=0.222297, loss=1.189165, lr=0.017327, time_each_step=0.59s, eta=0:46:53
2022-05-22 10:45:53 [INFO]	[TRAIN] Epoch=13/20, Step=14/468, loss_vfl=0.486455, loss_bbox=0.302700, loss_dfl=0.186873, loss=0.976028, lr=0.017247, time_each_step=0.48s, eta=0:40:0
…………

训练模型包括三个文件.

1、model.pdparams  模型参数
2、model.pdopt         优化参数
3、model.yml            配置文件  

在训练模型目录运行命令,导出部署模型,生成一个inference_model目录。

>paddlex --export_inference --model_dir best_model --save_dir infer

模型预测

测试数据集,包括使用手机和未使用手机的图片。

import cv2
import os
predictor=pdx.deploy.Predictor("output/picodet-phone/inference_model",use_gpu=True)
for f in os.listdir("img/photo"):
    imgfile=os.path.join("img/photo",f)
    img=cv2.imread(imgfile)
    result=predictor.predict(img)
    #print(result)
    vis_img=pdx.det.visualize(img,result,threshold=0.5,save_dir=None)
    cv2.imshow("result",vis_img)
    cv2.waitKey(0)
    cv2.destroyAllWindows()
98.人工智能——基于PicoDet使用手机行为检测

检测到使用手机

98.人工智能——基于PicoDet使用手机行为检测

检测到使用手机

未检测到使用手机

98.人工智能——基于PicoDet使用手机行为检测

检测到使用手机行为

从模型预测结果来看,基本上达到检测的要求,但还是会存在一些错检的行为,这里可能还需要多一些数据来进行训练。

对于人工智能,一是要有大数据,二是要有算力,三就是算法支持。

对于普通个人用户来说,即使有大数据,算力都很难保障。算法也都是人家的。

本文链接:https://www.dzdvip.com/33193.html 版权声明:本文内容均来源于互联网。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 395045033@qq.com,一经查实,本站将立刻删除。
(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022年5月22日 14:56
下一篇 2022年5月22日 16:47

相关推荐

  • 年销售过亿的产品差异化有哪些特点?

    近年来,新品层出不穷,元气森林、a1云蛋糕、简爱、妙可蓝多……它们的年销售早已过亿。那么,年销售过亿的产品,差异化到底有哪些特点?” 一、先找产品特性 1. 产品固有特性 “高钙美味又营养”,这是妙可蓝多从面世到现在都在讲的差异化。它提出的就是固有特性,以此来带动品牌以及整个品类的前进。每一类产品的存在,都证明它有与众不同的固有特性。牙膏是干什么的?刷牙。清洁牙齿就是它的固有特性。 1)固有特性如何寻找? 产品的固有特性非常强大,是消费者不选择其它品类,而选择这类产品的根本原因。先天就是针对竞争品类,所以要找出与竞争品类之间最大的差别。品类的固有特性不一定看得出来,得调研,去问问消费者怎么看。调研途中,也难免会犯一些错误。 比如,问为什么喝香飘飘时,消费者大多数的第一反应,肯定是好喝。我们就会认为这是固有特性,其实不是。哪一个入嘴的,除了药以外,不是好喝?不是好吃?所以香飘飘有段时间做的广告“好喝所以更受欢迎”,这个因果关系太不靠谱。 该如何做?就拿洗衣液来说。先逐一列出与主要竞争对手——洗衣粉之间的差别: 哪一个才是固有特性? 固有特性是最明显的那个特性。洗衣液到现在为止,卖得还算不错,即使它的去污能力还不如洗衣粉。而且所有的品牌都没有提出过好点的特性,更别说固有特性了。既然特性不用提出来,产品都能卖得好,证明消费者能一眼看出它的优点。 哪一个是不用介绍好处,就能使消费者购买的理由?以上只有一条,是没用过洗衣液就知道好处的,“易溶于水,不结块”——本身就是液体。而且竞争对手洗衣粉,不易溶于水的特性也很明显,它容易结块,特别是机洗的时候,搞不好就粘在衣服上了。 其它的特性也重要啊,都不是固有特性了吗? 都不是。不加前提原因,消费者就能明白的,才是固有特性。“漂洗简单”、“对衣物、皮肤伤害较小”,这些特性直接说出来,大家是不明白的,还需要加前提原因才能搞懂。就拿漂洗简单来说,它的前提是要经过漂洗过程对比,才能看清楚更容易漂洗。 唯一只有“易溶于水,不结块”,是大家在购买前,就能明显感知的固有特性。 2)固有特性何时用? 品类萌芽期可以使用。新品类刚诞生时,想要引起消费者的关注,就需要讲出与其它品类最大的不同。 很多品类在萌芽期,都没有产品提出固有特性。如果竞争对手是品牌老大,你该干嘛?最好是你提出固有特性,然后呢?必须改掉品类名,不能再提这品类如何如何了。因为它已经是…

    2021年6月3日
    17
  • 数字人民币是什么意思?

    什么是数字人民币?数字人民币即由中国人民银行发行的数字形式的法定货币,它可以丰富大众的支付方式。那么,数字人民币的系统架构、产品形态是什么样的?本文作者就数字人民币做了介绍,一起来看一下。 数字人民币虽然已经试点推行很长一段时间了,但对于大部分人来说还是很陌生的,特别是从专业的角度去分析数字人民币的定义、建设、推行、红包发放等方面;本期“沐沐讲数字人民币”会通过20几篇文章由浅入深的讲解数字人民币的方方面面,敬请关注作者后续文章! 一、数字人民币定义 1. 定义(法定) 数字人民币(英文简称:e-CNY)是由中国人民银行发行的数字形式的法定货币,由指定运营机构参与运营并向公众兑换。 截止到2021年11月30日,运营机构已由6家增加到9家,分别是中国工商银行、中国银行、中国农业银行、中国建设银行、交通银行、中国邮政储蓄银行、网商银行(支付宝)、招商银行(即将开通)、微众银行(腾讯旗下,即将开通)。未来将会有更多商业银行接入参与运营。 2. 账户特性 数字人民币以广义账户体系为基础,作为现金M0的补充。支持银行账户松耦合功能,且与实物人民币(纸币、硬币)等价,支持分级限额、可控匿名,具有价值特征和法偿性。 数字人民币账户特性 充钱/存钱功能:个人可将数字人民币账户的资金转存至银行账户,也可以通过绑定的银行账户向数字人民币账户进行存钱。 3. 发行愿景 丰富人行向社会公众提供的现金形态,满足公众对数字形态现金的需求,助力普惠金融; 支持零售支付领域公平、效率和安全诉求。数字人民币将为公众提供一种新的通用支付方式,提高支付工具多样性,提升支付体系效率与安全。 积极响应国际社会倡议,探索改善国际跨境支付。 二、总体系统架构 1. 系统架构 数字人民币系统总体架构核心要素为“一币、两库、三中心”。 一币是指由人行担保并签名发行的代表具体金额的加密数字串;两库是指人行DC/EP基础库和DC/EP商业银行库。 三中心包括: 登记中心:负责发行、转移、回笼全过程登记,分布式账本服务保证人行与商业银行的数字人民币权属信息一致; 认证中心:负责对用户身份信息进行集中管理,是系统安全基础组建和可控匿名设计的重要环节; 大数据分析中心:承担KYC、AML、支付行为分析、监管调控指标分析等职能。 以下为数字人民币系统总体架构图: 2. 运营框架 数字人民币总体运营框架采用“人行-商业银行/商…

    2021年12月4日
    74
  • 12个零门槛副业推荐,在家创业就能赚钱

    现在副业是刚需,毕竟多一份是收入就可以让我自己的生活压力更小一点,生活质量也能提高点。 我也一样,做着主业也有副业。 但我的主业都是在家里办公,尤其是从三月开始,每天在家除了码字就是码字,一天就要写三篇文章,有时候时间充足的情况会写四篇。 因为还需要兼顾一下我的副业,虽然是每天都是这样的生活,但好在地点不受限制,也不用去公司上班。 好了,废话不多说,今天我特意为想在家赚钱的你带来了12个零门槛的副业,这篇文章适合所有人,想赚钱的记得把文章点赞收藏起来哟~ 01.自媒体创业 自媒体比较适合长期发展,对于赚钱没有那么急促的,当然如果自己了解得比较透彻,输出内容也比较有质量,那变现周期也会大大减短。 下面是4个我比较推荐的自媒体平台: ①小红书 小红书现在也有视频号的功能,而且还会有流量扶持,所以不想写图文的也可以拍短视频,或者短视频和图文交替。 但不管是短视频还是图文,定位一定要统一,跨越性不要太大,毕竟要想变现得快,想要能接到广告,账号定位还是很重要的。 再者是小红书变现周期比较短,只要运营得不错,一个月左右有收入的可能性还是比较大的。如果想更多的了解,可以去翻看我之前发过的文章。 ②今日头条 今日头条我是最近一个月才重新运营起来的平台,在此之前专注的是小红书。但是当我认真运营今日头条后,发现今日头条也很适合发展。 0粉丝就可以开通基础权益,那也就意味着当你的发文章在几百阅读左右就会有收益了,虽然刚开始可能只是几分或者几块的收益。 但随着账号权重的提高,文章阅读量提高,那收益也会提高,当你每天能收益三四十块的时候,那一个月的收益也就可以上千了。 ③知乎 知乎比较适合有一定知识文化基础的人发展,当然你有一定的经验也是可以发展的。 知乎主要是回答问题,但还是那句话,定位和领域要明确,不能什么问题都去答上一答。其次知乎的变现可以是知识付费,也可以是好物推荐。 ④公众号 现在做公众号比较适合在其他平台有一定量粉丝的博主来做,因为如果你在其他平台没有点成就,一开始就做公众号的话,非常难做起来。 02.码字赚钱 码字赚钱比较适合喜欢写作的人,下面是4个靠码字可以赚钱的副业分享: ①写作投稿 如果不想自己运营自媒体平台,或者时间没有那么宽裕的,可以写作投稿,刚开始可以选择一些小型或者中型的账号进行投稿。 在自己的水平提高后再去投大号,而且一些大号会有签约的机会,这样收益也就会比较稳…

    2021年6月4日
    30
  • Win11有哪些隐藏功能?

    近日,微软下一代操作系统Windows 11在网络上偷跑。全新的UI设计,给人了耳目一新的感觉。随着试用人数增加,越来越多的隐藏功能开始被网友们挖掘出来,接下来咱们就一起看一看吧。 Win11这些隐藏功能你玩过没?   1. 恢复Win10经典菜单   Win11引入了全新开始菜单,一个最大变化就是取消了动态磁贴。不过也许是预览版缘故,目前这个菜单还存在很多问题,其中最明显的就是不允许用户自行调整大小,那么该如何恢复之前的开始菜单呢?   1) 打开注册表编辑器;   2) 进入HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerAdvanced;   3) 在右窗格中新建一个“DWORD(32位)值”,重命名为“Start_ShowClassicMode”;   4) 双击“Start_ShowClassicMode”,并将其赋值为“1”;   5) 重启Win11后,就能看到Win10的经典版菜单了; 恢复Win10经典开始菜单   恢复经典模式后,开始菜单会自动回归左下角,这会让整个界面看起来有些怪异。因此如果你真的决定要这么做,还要先打开“Settings”→“Personalization”→“Taskbar”,将Taskbar alignment的值修改成“Left”(任务栏居左),这样整体效果才会和谐一些。 通过注册表恢复的经典开始菜单   2. 调整任务栏尺寸   Win11并没有提供任务栏尺寸调节,对于很多用惯了Win10的小伙伴来说,其实是不太好适应的。但有网友发现,微软还是为我们提供了一个注册表键值,可以对任务栏的尺寸进行一些细微调整。   1) 打开注册表编辑器;   2) 进入HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerAdvanced;   3) 在右窗格中新建一个“DWORD(32位)值”,重命名为“TaskbarSi”;   4) 双击“TaskbarSi”为其赋值,其中“0”代表小尺寸,“1” 代表中尺寸,“2” 代表大尺寸;   5) 重启Windows Explorer(Windows资源管理器)后,效果就出来了; 三组尺寸对比   3. 任务栏隐藏工具条   除了之前的系统…

    2021年6月20日
    30
  • 中国十大新能源公司(中国十大新能源公司有哪些)

    中国十大新能源公司(全国新能源公司排名) 1.宁德时代 宁德时代新能源科技股份有限公司是全球领先的新能源创新科技公司,致力于为全球新能源应用提供一流解决方案和服务。在2020年末公司调整到位后,从200余元飙升到500余元,其市值也到达了1.3万亿左右,无疑是乘上了新能源的快车,同时也推动了动力电池行业的高速发展,要知道早在2017年宁德时代的电池销量已经是全球第一,至今依旧是第一。在新能源车必将替代油车的背景下,在2020年工信部目录下的6800种新能源车里就有3000多种是有宁德时代装配的电池。同时宁德时代与造车企业的合作更是如火如荼的开展中,先后与特斯拉,宝马进行了深度合作。 同时掌握各种行业内的领先技术 高电压技术 精准的单晶颗粒设计,搭配耐氧化电解液,通过不断拓宽电压上限,脱出更多的活性锂,从而显著提升能量密度,实现最优性价比。 电芯温控 自加热技术,可以使电芯最大限度均匀发热,克服常规加热膜加热方式造成的电芯受热不均衡,保青春,抗衰老。 单电芯能量管理 依托于高性能硬件平台,可对每一个电芯进行独立的状态计算,提高SOX精度,降低里程焦虑,提升整车性能。 2.亿纬锂能 惠州亿纬锂能股份有限公司(简称:亿纬锂能)成立于2001年,是国内消费电池,动力电池的龙头企业。公司在不断发展的同时也积极进行科学研究,以世界一流锂能企业为目标。公司研发面积达5万平方米,研发资产超过3亿元。始终致力于新材料、新技术在锂原电池中的应用,以此提升锂原电池的性能和可靠性。 锂离子电池技术中心的设立也是为了全球客户提供电源解决方案,一直致力于新能源领域前沿技术的发展。其研发的弯曲电池也应用在智能手表,智能手环中。 3.隆基股份 隆基绿能科技股份有限公司位于陕西西安,是全球单晶光伏全产业链龙头。率先同其他单晶制造商提出“统一单晶硅片尺寸”的理念,有力推动行业标准化发展,推动单晶硅片“薄片化”发展。从隆基的年报来看从12年的17亿营业收入到20年的545亿营业收入,9年来翻了32倍。是真的一家特别优秀的公司了。尤其是国家提出碳达峰,碳中和的号召后,更是会让隆基价值翻倍。 隆基持续加强研发投入,提高研发实力,与众多高校开展合作,新南威尔士大学、浙江大学国家硅材料实验室、兰州大学等一众知名高校,立足知识产权长远战略谋局,专注光伏行业科技创新、降本增效,通过不断提升研发创新能力,以前瞻性技术…

    2022年2月27日
    408
  • 教你如何加入美团送外卖?

    就在最近两年外卖行业越来越火爆,我们经常在路上看到小伙子骑着电动车,车上架着一个保温箱,川流在大街小巷,对他们就是我们在网上火爆的称为外面小哥《美团骑手》。那他们一般一个月多少工资呢?又是如何加入美团外卖做骑手的呢?我们今天就叫大家具体加入美团外卖做骑手兼职。 1.首先第一到手机软件商店里下载一个美团外卖专用的配送软件,美团众包​2.接着准备好本人的身份证和手机号码,打开美团众包软件点击注册,输入手机号码并确认,确认后手机会收到一条短信验证码,然后把验证码天下上去,就可以确认登入。登入后将进入美团众包配送,常识理论考试答题。 答题过关了还将加入账号实名认证,填写身份证号码,和上传身份证正反面照片,并绑定银行卡账号,并保证是本人银行卡和身份证身份保持一致资料填写好后系统进入审核,大约一到两个小时后系统会发短信通知审核结果,如果审核通过了,那恭喜你你就可以进入页面进行抢单了,刚刚加入的新手配送时骑车一定要注意安全哦!

    2021年6月15日
    55