- 博客(223)
- 资源 (5)
- 收藏
- 关注
原创 Beauty algorithm(六)大眼
前几篇主要介绍了唇妆、腮红、眼影、眉形渲染,它们都有一个共同点,关键点只需要检测一次,并且在获得目标区域融合渲染时,只是对像素点加权操作,处理速度快。而对于美颜,如大眼、缩鼻、缩下巴等操作,会产生局部形变,造成关键点移位。因此每次缩放后都要重新检测关键点,作为下次缩放的参考点,此过程会产生延时。
2024-01-06 19:00:26 569
原创 Beauty algorithm(三)腮红
查阅资料了解到腮红位于苹果肌处,同样使用关键点确定目标区域,然后对该区域进行渲染达到美妆效果。考虑到如果使用简单的RGB是很难做到特效,本篇采用模板方式进行区域融合。
2024-01-06 18:58:55 370
原创 BiSeNetV2-面部分割
一、论文BiSeNet V2: Bilateral Network with Guided Aggregation for Real-time Semantic Segmentation https://arxiv.org/abs/2004.02147BiSeNet V2将这些空间细节和分类语义分开处理,以实现高精度和高效率的实时语义分割。为此,提出了一个有效的架构,在速度和精度之间进行权衡,称为双边分割网络(BiSeNet V2)。该体系结构包括:(1)一个细节分支,具有宽通道和浅层,用
2022-07-14 21:38:30 997 1
原创 ncnn 部分算子不支持的替换操作
Torch Onnx ncnn F.interpolate resize interp Repeat expand 不支持 Mul/add mul/add BinaryOp ...
2022-04-15 23:06:17 1766 1
原创 ncnn param文件及bin模型可视化解析
param文件内容第一行【7767517】版本信息第二行【79 87】layer数及blob数layer数指:input、Convolution、BatchNorm、ReLU。。。 等数目其实就是打开文件时去除前两行剩余行数 即81-2=79 blob数指 中间产生结构分支等数目。bin文件可视化用netron打开param文件与bin模型网络结构对应关系具体对应关系如Convolution 层:Convolutio...
2022-04-14 23:37:18 4179 4
原创 ncnn paramdict&modelbin
paramdict、modelbin加载模型并存储模型形式:字典及binary。参数字典私有类ParamDictPrivateclass ParamDictPrivate{public: struct { // 0 = null // 1 = int/float // 2 = int // 3 = float // 4 = array of int/float // 5 = arra
2022-04-11 23:12:38 357
原创 ncnn DataReader&Extractor&blob
ncnn-blob.h网络中输入-输出对应标记(网络层中的节点名??)。class NCNN_EXPORT Blob{public: // empty Blob();public:#if NCNN_STRING // blob name std::string name;#endif // NCNN_STRING // layer index which produce this blob as output int producer;
2022-04-10 23:48:49 705
原创 ncnn 线程
ncnn-platform.h线程与线程局部存储类的创建-声明及实现static unsigned __stdcall start_wrapper(void* args);//线程类class NCNN_EXPORT Thread{public: //构造函数-初始化列表 Thread(void* (*start)(void*), void* args = 0) { _start = start; _args = args; handle = (HANDLE)_begin.
2022-04-09 15:51:36 1349
原创 ncnn Allocator内存分配器
1、Allocator类声明:class NCNN_EXPORT Allocator{public: virtual ~Allocator(); virtual void* fastMalloc(size_t size) = 0; virtual void fastFree(void* ptr) = 0;};Allocator类,内部包含三个虚函数:两个纯虚函数,一个虚析构函数。纯虚函数:意味着Allocator是一个抽象类,不能对其实例化操作,只能通过其子
2022-04-08 23:55:43 2091 1
原创 多项式插值拟合(三)
三阶多项式插值(立方插值):fx=ax^3+bx^2+cx+dinterp1d(x,y,kind='cubic') 'cubic'立方插值import numpy as npfrom scipy.interpolate import interp1d,interp2dimport pylab as plx=np.array([1,2,3,4,5])y=np.array([1,4,2,4,1]) #Y=x^3+x^2+x+1fc=interp1d(x,y,kind='cubic'
2022-04-07 21:13:31 1118
原创 多项式插值拟合(二)
多项式二次插值公式:y=ax^2+bx+cinterp1d(x,y,kind='quadratic')中kind参数值为'quadratic'import numpy as npfrom scipy.interpolate import interp1d,interp2dimport pylab as plx=np.array([1,2,3,4,5])y=np.array([1,4,2,4,1])fc=interp1d(x,y,kind='quadratic')xint=np.li
2022-04-07 11:00:59 1829
原创 多项式插值拟合(一)
使用多项式插值法进行点间拟合。多项式方程:展开形式:f(x)=a0x+a1x^2+a2x^3+...给定n个平面坐标点,通过多项式方程可求解n个方程参数解,并且解是唯一的(自证)。解法采用范德蒙行列式求解。在图像处理过程中有时会用到线段区域拟合,因此采用插值法将n点之间进行点补充。一阶方程:y=ax+b 需要两点可以使用scipy库中的插值类举个例子:对5点之间进行一阶插值import numpy as npfrom scipy.interpolate imp
2022-04-06 23:50:08 1296
原创 人脸关键点检测
开源库有dlib安装:https://pypi.org/simple/dlib/,下载后pip安装模型下载:Index of /files1、dlib5点左右眼角及人中5点。import dlibimport numpy as npimport cv2import timepredictor_path = '../model/shape_predictor_5_face_landmarks.dat'detector = dlib.get_frontal_face_dete.
2022-04-05 16:08:08 5153
原创 ncnn Mat矩阵类
参考:ncnn源码学习(一):载入param文件_MirrorYuChen的博客-CSDN博客_ncnn源码1、模型加载2、输入3、推理输出
2022-04-03 23:23:06 4399 2
原创 Android ncnn推理识别
1、模型准备需要onnx2ncnn转化的param和bin文件。以resnet18为例:用pytorch训练的模型文件经onnx及简化后,在转化为ncnn框架下文件格式。转化流程:pt -> onnx -> onnx-sim ->param、bin也就是上篇文章获得的res18.param、res18.bin两个文件2、下载安卓编译ncnn库下载链接:Releases · Tencent/ncnn · GitHub3、创建工程3.1 选native c++
2022-04-02 12:34:13 2368
原创 ncnn 推理猫狗识别
pc端windows平台下ncnn推理图像识别模型。本文主要从模型训练-onnx转化-onnx2sim-onnx2ncnn以及C++推理实现。
2022-03-28 23:37:43 972
原创 pc端ncnn搭建与测试
目录一、本文系统配置二、编译参考:三、测试1、配置ncnn、protobuf、opencv2、模型文件拷贝3、代码测试在PC使用NCNN框架推理加速模型,需要先获取ncnn编译后的动静态库。一、本文系统配置windows10VS2019CMake 3.18.4二、编译编译前需要先下载protobuf和ncnn源码。参考:Windows下ncnn环境配置(VS2019)_逮仔的博客-CSDN博客_ncnn vs2019(一)ncnn
2022-03-28 21:33:10 3779 2
randomforest
2018-03-08
SVM物体分类
2017-09-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人