自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 收藏
  • 关注

原创 Stable Diffusion 笔记一:网络结构拆解

VAE编码器的部分作用是将像素图片编码转为潜空间图片,SD在此潜空间图片上进行迭代生成,迭代后的图片再由VAE解码器部分转换成像素级图片。SD生成的图片是潜空间图片(Latent image)而不是直接使用的图片(Pixel image)。每一个数字转换成768维的向量。像素图片是正常使用的图片,通常包含主体的物体人物角色,和多余的部分空白背景等与主体无关的噪声。潜空间图片可以理解为是像素图片在高维空间的另一种表达,是像素图片的一种压缩表示。交叉注意力模块的输入一部分是自己,另一部分是其他的一些信息。

2024-01-26 11:46:54 998

原创 Stable Diffusion 手动安装扩展报错 catch exception for non git extensions

这会在每次使用SD-webui时,更新扩展目录时,代码找不到插件对应的 .github文件夹而报出异常。这会导致在线更新无法使用。使用手动安装SD扩展插件时(下载代码包复制到扩展目录),扩展目录中会没有 .github的文件夹。解决办法 :对校验git文件的代码进行修改。

2023-09-19 15:18:56 551

原创 知识蒸馏,知识迁移

1 什么是知识蒸馏,知识迁移我们有一个训练好的教师网络Teacher Model 和 数据 和一个未训练好的学生网络Student Model。我们需要学生网络有着与教师网络相似的,相近的能力。实现的方式就是知识蒸馏,知识迁移。表现如图示:教师把知识传授给学生,学生学会了知识,就有和教师相似的能力。2 为什么要使用知识蒸馏,知识迁移项目实施通常会把模型部署到终端,然而终端的算力都是有限的。教师网络往往是本身模型参数大,使用海量数据训练,算力要求也是巨大的,这是不适...

2022-03-09 17:25:48 4774

原创 Pyqt5 手写界面--摘要记录

1初始化界面from PyQt5.QtWidgets import QLabel, QWidgetfrom PyQt5 import QtWidgets, QtGuifrom PyQt5.QtGui import QPainter, QColor, QIcon, QPixmapimport sysclass My_UI(QWidget): def __init__(self,rstpadd=None,parent=None): super(My_UI, self)._

2021-11-22 17:21:02 833

原创 python playsound 播放mp3 文件后解除占用报错修改

class PlaysoundException(Exception): passdef _playsoundWin(sound, block = True): ''' Utilizes windll.winmm. Tested and known to work with MP3 and WAVE on Windows 7 with Python 2.7. Probably works with more file formats. Probably work.

2021-10-22 16:01:15 761

原创 环境配置python3.7+tensorflow-gpu1.15+CUDA10+cudnn7.6

1tensorflow-gpu各对应版本https://blog.csdn.net/weixin_43760844/article/details/113477352我们使用的tensorflow是GPU版本的 对应是1.15版本如图踩坑后得知配置环境需要python3.7CUDA10cudnn7.6Tensorflow-gpu-1.152安装CUDA10https://blog.csdn.net/m0_37872216/article/details/10.

2021-05-26 17:27:59 2465 1

原创 记录 ,Pytorch 模型转为C++版本 部署在windows 上(仅包含cmake编译过程)和 运行demo

官方文档:https://pytorch.org/cppdocs/installing.html参考博客:https://zhuanlan.zhihu.com/p/68901339https://zhuanlan.zhihu.com/p/104225144https://www.cnblogs.com/carsonzhu/p/11197048.html一保存模型:这一步比较简单一般不会存在问题简单来说就是把模型转换为序列化的格式 并 保存下来二cmake编译过程:.

2020-12-01 17:05:40 1519 1

原创 cv2 k-means聚类算法 + matplotlib 雷达图 可视化多维数据

cv2 k-means 资料:https://zhuanlan.zhihu.com/p/79518281在放入分类器之前要把数据变成 float形式。设置了4个聚类中心。使用雷达图可视化多维数据import pandas as pdimport matplotlib.pyplot as pltfrom pandas.plotting import radvizplt.figure(figsize=(25, 25))radviz(Data, 66, None, ["b",".

2020-10-21 17:16:16 1725

原创 使用PyQt 来实现图片数据标注demo

PyQt参考学习的博客:https://blog.csdn.net/azuremouse/article/details/903389610.程序结构1.demo_pic 是保存了两张测试图片 苹果 和 橙子。 txt是程序运行并标注后生成的标签文件。2. get_label_demo.ui 是使用Qtdesigner 实现的界面get_label_demo.py 是其转换来的3 . mian函数是实现具体功能的code部分1.我实现的界面导入文件夹按钮...

2020-10-09 17:49:43 1941 7

原创 使用拉普拉斯特征金字塔实现图像融合

显示的图片下采样尺寸是不断减小的,上采样反之。 我把画布固定了尺寸,所以看起来是一样的长宽。0函数#导入库import cv2import numpy as npimport matplotlib.pyplot as pltfrom PIL import Image #用于打印函数def out_img(img): plt.figure(figsize=(10,10)) #设置窗口大小 dst_img = cv2.cvtColor(img, cv2.COLOR_BGR

2020-09-21 17:11:30 2296

原创 手动实现yolov3-tiny模型结构

import torchimport torch.nn as nnimport numpy as npfrom torchsummary import summaryimport torch.nn.functional as Fclass convBatchReluBlock(nn.Module): def __init__(self, in_c, out_c, k, s, p): super().__init__() self.cblr = nn...

2020-09-04 16:14:43 1365

原创 Pytorch Retinaface 模型实现

参考博客:https://blog.csdn.net/weixin_44791964/article/details/106871010博客里面是keras版本的 我根据网络结构写的Pytorch版本。第一个文件是mobilev1 的 0.25版本的实现。第二个文件上整体retinaface 网络结构实现。1 mobilenet025.pyimport torchimport torch.nn as nnimport numpy as npfrom torchsummary

2020-08-19 16:12:41 809

原创 GLU-Net代码的理解

以源码GLUNet.py为例1使用self.pyramin来提取图像的金字塔特征,这里使用的是VGG网络。第一部分是在原图feature上进行金字塔特征提取,分别取原图8倍下采样率,4倍下采样率对应的feature。对应GLU-Net网络的左边部分。第二部分是把原图固定到256分辨率后分别取16分辨率和32分辨率尺度下的feature。2使用的金字塔特征提取网络-VGG第一步分用于提取图片的四个尺度的特征,1,1/2, 1/4, 1/8。这个特征特征x_quarter和x_e...

2020-08-13 17:25:59 1833 3

原创 RANSAC-FLOW代码的理解

主要说明demo.py文件的理解,即输入img_source和img_target,使用训练好的模型权重,输出粗匹配结果和神经网络预测的光流匹配结果。img_source 和 img_target 第三张图片是各区0.5权重加权叠加的结果。网络分为4部分。netFeatCoarse 使用全卷积进行图特征提取,8倍下采样。netCorr计算相关性,netFlowCoarse预测光流匹配。netMatch用于计算网络循环损失,训练涉及,这里不涉及。一、初始化粗匹配模块参数:#7

2020-08-13 13:34:43 1231 1

原创 Pytorch 通过hook获取网络中间结果(feature)

PART 1 定义网络结构 ResNet-18def conv3x3(in_planes, out_planes, stride=1): "3x3 convolution with padding" return nn.Conv2d(in_planes, out_planes, kernel_size=3, stride=stride, padding=1, bias=False)class BasicBlock(nn.Modul..

2020-08-11 13:36:14 2473 3

原创 YOLOV3 源码 module.py

主要是说明程序解析cfg文件 实现实例化module的流程。以及网络cfg各个层次与module各个层次的对应源码地址:https://github.com/ultralytics/yolov3一.cfg文件1网络一些设定动量优化算法的系数学习率的衰减系数2卷积层3shortcut层对应residual block 中 shortcut操作4yolo层以及yolo层之前的conv层5 反卷积层...

2020-07-30 13:06:48 836 1

原创 模型量化-更小更快更强

原视频地址:https://www.bilibili.com/video/BV19J411R7t2?t=4678官方长文:https://www.sohu.com/a/361341209_610522整理的时候发现的官方长文。OutlinesFixed-point and Floating-point Numbers假如使用8bit 的离散量化方式 只能表示256个数 128负 0 127正数模型压缩常见的方式1矩阵分解:把100*100 的矩阵分解成...

2020-07-30 11:12:03 1768

原创 pytorch YoLOV3 源码解析 train.py

train.py总体分为三部分(不算import 库)初始的一些设定 + train函数 + main函数一 .import 相关torch.distributed 分布式训练torch.optim.lr_scheduler 学习率衰减二.初始设定1使用混合精度训练2预训练权重路径Python可跨平台使用,但win和linux 的路径分隔符是不同的(斜杠)。这里的os.sep会根据你所处的平台,自动采用相应的分隔符号。results.txt 记录loss3获取本地的超参数文件并

2020-07-23 09:24:47 1861

原创 pytorch手动实现MobileNet_v2

First在做项目的时候在GitHub上面找了一篇MobileV2模型实现的源码,自己仔细看了一下,感觉实现的只是整体结构,但是和论文种不太贴切,由此修改成较为符合论文结构的代码版本。About原始代码下面是原始代码实现BottleNeck的部分,可以看到只是实现了 升维->分组卷积->降维,并判断是否进行shortcut操作。但是并没有具体到实现Depthwise Conv 和 Pointwise Conv两部分。class LinearBottleNeck(nn.Module):

2020-07-20 16:39:09 1525

原创 opencv-python阈值分割

全局阈值分割`import numpy as npsrc = np.array([[123,234,68],[33,51,17],[48,98,234],[129,89,27],[45,167,134]])src[src>150] = 255src[src<=150] = 0src在图像处理中一般不处理原图 而是使用ndarray的成员函数copy()阈值函数threshold(InputArray src, OutputArray dst, double thresh,

2020-07-11 18:32:32 2380

原创 Pytorch 手动实现facenet 网络结构

One( (con1): Conv2d(3, 64, kernel_size=(7, 7), stride=(2, 2)) (max_pool1): MaxPool2d(kernel_size=3, stride=2, padding=1, dilation=1, ceil_mode=False) (ipt2_1): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1)) (ipt2_2): Conv2d(64, 192, kernel_size=

2020-07-09 09:26:01 1652

原创 错误 :cannot unpack non-iterable float object

这里使用两个变量来接收 函数的 两个返回值当函数返回一个变量的时候会报这个错误

2020-06-24 13:58:47 24186 1

原创 错误:cv2.error: OpenCV(4.2.0) C:\projects\opencv-python\opencv\modules\imgproc\src\color.cpp:182: erro

使用dilib裁剪图片 报错:cv2.error: OpenCV(4.2.0) C:\projects\opencv-python\opencv\modules\imgproc\src\color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor'原因是dlib会把在边缘的一些点定义成负的值根据坐标裁剪的时候把负数值修正就好了...

2020-06-16 17:54:28 7905 2

原创 SSD

设计理念SSD和Yolo一样都是采用一个CNN网络来进行检测,但是却采用了多尺度的特征图,其基本架构如图3所示。下面将SSD核心设计理念总结为以下三点:(1)采用多尺度特征图用于检测一个比较大的特征图和一个比较小的特征图,它们都用来做检测。这样做的好处是比较大的特征图来用来检测相对较小的目标,而小的特征图负责检测大目标,如图4所示,8x8的特征图可以划分更多的单元,但是其每个单元的...

2019-10-16 21:48:38 357

原创 Faster-R-CNN

1整体结构2更为详细的过程描述,向网络中输入一张图片,显示resize到M*N,之后通过我们预训练好的卷积网络,得到feature map。之后在RPN中的2个卷积为1*1网络 分别输出 RPN目标检测框的位置信息和框中是不是背景。如果是背景就把框舍弃。之后使用ROIPooling,将后面网络的输入固定。之后再通过网络输出 检测目标分类的结果和边框回归的结果。3RPN的实现...

2019-10-16 16:50:33 220

原创 MTCNN

MTCNN人脸检测是2016年的论文提出来的,MTCNN的“MT”是指多任务学习(Multi-Task),在同一个任务中同时学习”识别人脸“、”边框回归“、”人脸关键点识别“。1“金字塔”变换首先将原始图片缩放到不同的尺度,形成一个图像金字塔。这可以解决有的人脸大,有的人脸小,能把在同一尺度之下检测人脸。2网络结构P-Net是一个全卷积网络,可以适应任意尺寸的输入,...

2019-10-16 08:16:37 2320

原创 YOLO

YOLOYOLO算法整体来说就是把输入的图片划分为S*S格子,这里是3*3个格子。当被检测的目标的中点落入这个格子时,这个格子负责检测这个目标,如图中的人。我们把这个图片输入到网络中,最后输出的尺寸也是S*S*n(n是通道数),这个输出的S*S与原输入图片S*S相对应(都是3*3)。假如我们网络一共能检测20个类别的目标,那么输出的通道数n=2*(4+1)+20=30。这里的2指的是...

2019-10-15 14:15:12 4074

原创 经典网络实现

Alex#%%# Copyright 2015 The TensorFlow Authors. All Rights Reserved.## Licensed under the Apache License, Version 2.0 (the "License");# you may not use this file except in compliance with the L...

2019-10-14 15:57:00 194

原创 目标检测

定位与检测我们 不仅要用算法判断图片中是不是一辆汽车,还要在图片中标记出它的位置,用边框或红色方框把汽车圈起来,这就是定位问题。当图片中有多个对象时,应该如何检测它们,并确定出位置。比如, 你正在做一个自动驾驶程序,程序不但要检测其它车辆,还要检测其它对象,如行人、摩托车等等。定位的表示对于分类问题我们网络最输出的是每个类别对应的概率大小如果你想定位图片中汽车的位置...

2019-10-14 09:14:58 249

原创 基于object-detection和tf-slim的办公室检测项目

https://github.com/tensorflow/models/tree/master/research/object_detectiontensorflow中的models模块中research中的object detection模块object detection模块看似和slim框架平级但是其实是在object detection模块有使用slim框架的部分所以obje...

2019-10-08 10:36:43 342

原创 基于tf-slim 的卫星区域地形的分类模型的训练。

数据准备1数据介绍数据是关于卫星图像的数据,一共包括 森林:wood水域:water 岩石:rock 农田:wetland冰川:galcier城市区域:urban 6个类别。训练数据一共包含4800张图片,每个类别有一个对应的文件夹,其中存放该类数据。2 数据转换我们要把数据转换成tf-record格式,还要生成一个包含类别与id对应信息的文件:lable.txt。...

2019-10-06 08:44:13 309

原创 GAN,DCGAN,cGAN,pix2pix,CycleGAN,原理简单理解

GANGAN,Generative Adversarial Networks, 意为对抗生成网络,原始的GAN是一种无监督学习方法,通过使用‘对抗’的思想来学习生成式模型,一旦训练完成后可以全新的数据样本。GAN原理我们可以把GAN理解为一个生成数据的工具,实际GA...

2019-09-29 06:08:29 5393 3

原创 分类&定位 简述

分类1二分类:是猫?不是猫?多分类:是猫?是狗?是羊?2深度分类网络 = 特征提取层+分类器3softmax4损失函数就交叉熵损失5分类的两种结构:全连接 :flatten操作 卷积:squeeze操作(把维度为1的列去掉)卷积方式输入尺寸可不固定定位1定位的两种方式: 滑动窗口 改造的卷积神经网络2滑动窗口:我们通过不断的一个不断滑动的窗口来截取图片中...

2019-09-09 09:17:08 467

原创 imdb情感分析

数据处理数据准备import urllib.request import os import tarfile#在线方式下载数据集url = ""filepath = "data/IMDb数据集/aclImdb_v1.tar.gz" if not os.path.isfile(filepath): result = urllib.request.urlretriev...

2019-06-08 00:10:29 3511 2

原创 Siamese Network:孪生网络 简单理解

Siamese 意为暹罗猫 孪生 双子也恰好描述了这个网络的结构1孪生 是指这个网络结构中的Network_1和Network_2这两个网络的结构一般是相同的,并且参数是共享的 即参数是一致的。还有一种网络叫伪孪生网络 直观理解就是左右两边的网络结构是不同的。2在图中的网络中 左右两个网络的作用是用于提取输入图片的特征。特征提取器比如在人脸领域,输入两个人的人脸图片信息...

2019-05-28 17:40:29 35168 9

转载 网址的记录

https://blog.csdn.net/boss2967/article/details/78929288 https://blog.csdn.net/u014281392/article/details/79693848

2019-05-16 18:08:59 474

转载 Ubuntu18.04深度学习环境配置(简易方式)-转自黄海广老师

自己微信收藏的东西不是按时间排序的,保存之后不容易找到,所以把地址保存在博客上。http://mp.weixin.qq.com/s?__biz=Mzg5NzAxMDgwNg==&mid=2247484234&idx=1&sn=0f41af672c6eccfba3ea74adc1be00e6&chksm=c0791e53f70e974599c002bfe...

2019-05-15 15:07:31 4532

原创 语义分割网络原理+Keras实现FCN-8网络结构

目录FCN简介FCN-转置卷积(transposed conv)回顾VGG网络 (仅画出了关键的网络层次结构)FCN中的VGG变化还原大小FCN-CRFFCN-16论文中的一点技巧对比8层,16层,32层我们可以去除池化层吗?Atrous conv/Dilated conv自己的思考?可能不对Deep Lab V2GCNBoun...

2019-05-10 21:10:50 3361

原创 数据结构和算法

目录一、引入概念1算法引入问题如果 a+b+c=1000,且 a^2+b^2=c^2(a,b,c 为自然数),如何求出所有a、b、c可能的组合?程序import timestart_time = time.time()for a in range(0,1001): for b in range(0,1001): for c in...

2019-05-03 12:42:40 640

原创 笔记:强化学习 策略梯度算法

Q Learning ,SARSA,DQN 本质上都是学习一个价值函数 Q函数。在环境决策时 需要首先确定当前的状态,然后根据Q(s,a)选择一个价值较高的动作去执行策略梯度算法策略梯度算法和他们都不同。他不再去学习价值函数 Q函数 ,而是直接通过模型 比如神经网络 输入需要采取的动作以Cartpole游戏为例,平台上面有一个直立的杆,我们不断左右移动平台,每一个时刻都可以获得...

2019-04-29 08:59:15 1036

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除