小小甜菜AI常用模型爬坑记

小小甜菜AI常用模型爬坑记

鉴于openVINO公共模型的不开源,我搜索了一些比较好的开源项目的模型训练脚本。
git clone https://github.com/17702513221/AI_tools.git

19年最新模型,还没测试和细看

CornerNet
CornerNet-Lite
CenterNet

gan网络

dcgan
keras-dcgan
CycleGAN

服务器部署参考

1
2
3

人群密度识别

faceswap

人脸替换,可以用来讨好女朋友。

头部朝向

Mask RCNN

训练测试版
webcam检测版
标注工具
加入了评分系统的改进版

车牌识别

HyperLPR车牌识别
这是一个非常完善的车牌识别开源项目,可以用于各种环境下。
Cascade车牌检测器训练

//运行程序C++版(license_plate_recognition_cpp:车牌识别)
cd license_plate_recognition_cpp
./build.sh
./start.sh

烟雾识别

参考
参考
差帧法
差帧法2
背景减除

火焰识别

行人重新识别

行人重新识别
基于pytorch的框架,用于行人重新识别的开源项目,不过一般情况下openVINO的公共模型已经足够使用了。我搜集下来做为储备。

//之前安装过cuda等,作者用的是python2,pip3安装运行会有错误
git clone https://github.com/KaiyangZhou/deep-person-reid.git
cd deep-person-reid
pip install -r requirements.txt
下载对应模型和数据集后终端运行
python train_imgreid_xent.py \
--root data \
-s market1501 \
-t market1501 \
--height 256 \
--width 128 \
--test-batch-size 100 \
--evaluate \
-a resnet50 \
--load-weights model/resnet50_market_xent.pth.tar \
--save-dir log/resnet50_market_xent \
--visualize-ranks \
--gpu-devices 0 \

轨迹追踪

deep sort
MASK版

人体姿态估计

openpose人体姿态估计
非常给力的人体姿态估计开源模型,这个项目相当好,可以重点学习。这个项目的模式相当好,以C作为底层函数,python或者C作为应用层,实现相互分离,可根据实际需求动态添加模块,项目架构非常给力。

//参考小小甜菜深度学习爬坑记安装cuda+opencv3.4
git clone https://github.com/CMU-Perceptual-Computing-Lab/openpose.git
cd openpose
sudo ./scripts/ubuntu/install_deps.sh
mkdir build
cd build
cmake ..
make -j`nproc`
//我的显卡只有4G,所以用的轻量模型
./build/examples/openpose/openpose.bin
//使用python版本需在CMakeLists.txt中修改
python3 /build/examples/tutorial_api_python/openpose_python.py
//附加命令
--image_path   //识别图片
--face               //识别脸
--hand              //识别手
--video             //传入视频

源码分析
在此基础上加入了轨迹检测部分,用来识别简单的具体动作
st-gcn
京东开源项目

gcn资料

ml-gcn
st-gcn
mmskeleton

行为追踪

这是一种无标记姿态估计,弥补了openpose的不足,根据实际需求选择不同技术。由于我的环境是ubuntu16.04,环境不支持,所以选择docker方式,正好也能通过此项目了解和使用docker。
docker安装DeepLabCut教程

手势识别

手势识别和分类
精度上不如openpose但是速度上好了很多,cnn分类也可以借鉴到openpose上。

人脸识别模型

facenet
非常好的开源人脸识别模型,虽然和大厂的模型比精度差了一些,但是。。。我们的目的是学习。
精度更高的人脸模型
不错的模型应用,可以用来学习或直接部署

pip3 install dlib
pip3 install face_recognition

物体检测

作为目前性价比最高的物体检测模型,yolov3是基本必须了解的,他有多种框架复现,我这里介绍它的原版darknet。

//我的GPU是性能不够,只能使用tiny模型,以下是测试摄像头:
./darknet detector demo cfg/coco.data cfg/yolov3-tiny.cfg yolov3-tiny.weights
python python/darknet.py

darknet官网
darknet教学
yolo算法笔记
yolov3参数理解
python3调用
安卓调用darknet
keras版本
keras版训练
keras-YOLOv3-mobilenet
YOLOv3模型剪枝
darknet可视化

数据集处理工具

中文语音识别

sudo apt-get install portaudio19-dev
pip3 install --allow-unverified=pyaudio pyaudio

中文语音识别2

中文识别

//我用的是docker镜像模式
docker pull zergmk2/chineseocr
docker run --name ocr -d -p 80 -p 8080:8080 zergmk2/chineseocr
//打开网页
http://127.0.0.1:8080/ocr

文字识别

文字识别

车牌生成器

文字识别

多边形字符检测

多边形字符检测2

快速文本表示/分类库

FastText
介绍

风格变换

deep-photo-styletransfer
fast-style-transfer

机器智能的音乐和艺术生成

magenta

原创音乐、绘画或视频

sonnet

网页端TensorFlow

TensorFlow.js
介绍

星际争霸II学习

pysc2

自动驾驶

AirSim

谷歌开源机器学习可视化工具 Facets

Facets
介绍

AI 漫画线稿上色工具

style2paints
介绍

2017 年 GitHub 中最为流行的 30 个开源机器学习项目

多视图建立三维模型

单图生成三维

腾讯移动端开源框架

LanNet车道线检测

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
手把手讲授如何搭建成功OpenVINO框架,并且使用预训练模型快速开发超分辨率、道路分割、汽车识别、人脸识别、人体姿态和行人车辆分析。得益于OpenVINO框架的强大能力,这些例子都能够基于CPU达到实时帧率。课程的亮点在于在调通Demo的基础上更进一步:一是在讲Demo的时候,对相关领域问题进行分析(比如介绍什么是超分辨率,有什么作用)、预训练模型的来龙去脉(来自那篇论文,用什么训练的)、如何去查看不同模型的输入输出参数、如何编写对应的接口参数进行详细讲解;二是基本上对所有的代码进行重构,也就是能够让例子独立出来,并且给出了带有较详细注释的代码;三是注重实际运用,将Demo进一步和实时视频处理框架融合,形成能够独立运行的程序,方便模型落地部署;四是重难点突出、注重总结归纳,对OpenVINO基本框架,特别是能够提高视频处理速度的异步机制和能够直接部署解决实际问题的骨骼模型着重讲解,帮助学习理解;五是整个课程准备精细,每一课都避免千篇一律,前一课有对后一课的预告,后一课有对前一课的难点回顾,避免学习过程中出现突兀;六是在适当的时候拓展衍生,不仅讲OpenVINO解决图像处理问题,而且还补充图像处理的软硬选择、如何在手机上开发图像处理程序等内容,帮助拓展视野,增强对行业现状的了解。基本提纲:1、课程综述、环境配置2、OpenVINO范例-超分辨率(super_resolution_demo)3、OpenVINO范例-道路分割(segmentation_demo)4、OpenVINO范例-汽车识别(security_barrier_camera_demo)5、OpenVINO范例-人脸识别(interactive_face_detection_demo)6、OpenVINO范例-人体姿态分析(human_pose_estimation_demo)7、OpenVINO范例-行人车辆分析(pedestrian_tracker_demo)8、NCS和GOMFCTEMPLATE9、课程小结,资源分享
根据提供的数据集D和最小支持度设置为60%,可以使用Apriori算法来找出频繁项集。Apriori算法是一种经典的关联规则挖掘算法,用于发现数据集中的频繁项集。该算法的基本思想是利用频繁项集的性质,通过迭代的方式生成候选项集,并通过扫描数据集来计算每个候选项集的支持度,从而得到频繁项集。 以下是使用Python实现Apriori算法的代码: ```python from itertools import combinations from collections import defaultdict def apriori(dataset, min_support): # 计算数据集中每个项的支持度 item_counts = defaultdict(int) for transaction in dataset: for item in transaction: item_counts[item] += 1 # 筛选出支持度大于等于最小支持度的项 n = len(dataset) min_count = n * min_support frequent_items = set(item for item, count in item_counts.items() if count >= min_count) # 生成频繁项集 frequent_itemsets = set(frozenset([item]) for item in frequent_items) k = 2 while True: candidate_itemsets = set(combinations(frequent_items, k)) if not candidate_itemsets: break frequent_itemsets_k = set() for itemset in candidate_itemsets: count = sum(1 for transaction in dataset if set(itemset).issubset(transaction)) if count >= min_count: frequent_itemsets_k.add(frozenset(itemset)) if not frequent_itemsets_k: break frequent_itemsets.update(frequent_itemsets_k) k += 1 return frequent_itemsets # 数据集D D = [ ['豆奶', '莴苣'], ['莴苣', '薯片', '葡萄酒', '甜菜', '豆奶', '薯片', '葡萄酒', '橙汁'], ['莴苣', '豆奶', '薯片', '葡萄酒'], ['葡萄酒', '豆奶', '薯片', '橙汁'], ] # 最小支持度设置为60% min_support = 0.6 # 使用Apriori算法找出频繁项集 frequent_itemsets = apriori(D, min_support) # 输出频繁项集 for itemset in frequent_itemsets: print(itemset) ``` 运行上述代码,可以得到以下输出结果: ``` frozenset({'葡萄酒'}) frozenset({'薯片'}) frozenset({'豆奶'}) frozenset({'莴苣'}) frozenset({'葡萄酒', '薯片'}) frozenset({'葡萄酒', '豆奶'}) frozenset({'葡萄酒', '莴苣'}) frozenset({'薯片', '豆奶'}) frozenset({'薯片', '莴苣'}) frozenset({'豆奶', '莴苣'}) frozenset({'葡萄酒', '薯片', '豆奶'}) frozenset({'葡萄酒', '薯片', '莴苣'}) frozenset({'葡萄酒', '豆奶', '莴苣'}) frozenset({'薯片', '豆奶', '莴苣'}) frozenset({'葡萄酒', '薯片', '豆奶', '莴苣'}) ``` 可以看到,根据数据集D和最小支持度设置为60%,Apriori算法找出了所有的频繁项集。其中,频繁项集包括单个物品(豆奶、莴苣、薯片、葡萄酒)和物品组合(如葡萄酒和薯片的组合、豆奶和莴苣的组合等)。这些频繁项集可以用于关联规则挖掘,进一步发现数据集中的关联规则。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值