- 博客(54)
- 收藏
- 关注
原创 No signature of method编译出错的问题
首先问题如下:A problem occurred evaluating project ':app'.No signature of method: build_5woso1t2zz3j65kzgsuf20yp6.android() is applicable for argument types: (build_5woso1t2zz3j65kzgsuf20yp6$_run_closure1) values: [build_5woso1t2zz3j65kzgsuf20yp6$_run_closure1
2021-12-15 10:27:51
14586
1
原创 【CheckBox控件的使用】+【MainActivity的多功能切换】
java代码CheckBox控件–多选项import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.widget.CheckBox;import android.widget.CompoundButton;import android.widget.Toast;public class CheckBoxActivity extends AppCompatActivity {
2021-11-23 22:23:39
2211
原创 【ImageView加载网上的图片】
☆Button衍生控件:ToggleButton, switch开关.ImageView:加载网络图片import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.widget.ImageView;import com.bumptech.glide.Glide;public class ImageViewMainActivity extends AppCompatActivit
2021-11-23 21:01:06
2380
原创 SIFT【尺度不变特征转换】和关键点的旋转不变性
如何判断关键点的旋转不变性?解:图像金字塔每层会得到一系列的DoG[Difference of Gaussian]极大值点,在极值中选取关键点【1.点的周围在邻域范围中是最大值;2.相邻金字塔层的邻域是最大值满足1,2的点具有缩放不变性】但是由于边缘响应,可能找到的点并不是关键点,因此,在此基础上需要计算该点的Hessain矩阵,通过Hessian计算该点的主曲率,利用阈值过滤主曲率较小的点,最后点认为是【关键点】此时问题来了,如何判断关键点的旋转不变性呢?具体方式:选择关键点的相邻点,计算周围
2021-09-17 16:17:06
642
原创 字典Key和value的排序——应用【451. 根据字符出现频率排序】
字典的遍历:sorted(target, key, reverse)通过sorted排序后的字典结果返回的是listdict = {'q':2, 'w':3, 'e':1}1.按key进行排序:sorted(dict.keys())# 结果:['e', 'q', 'w']sorted(dict.keys(), reverse=True) # 逆排序# 结果:['w', 'q', 'e']2.按value排序:D = {‘q’:1, ‘r’:2, ‘t’:3}F = sorted(D
2021-09-06 18:44:56
230
原创 每日一题:寻找旋转排序数组中的最小值 II
题目:已知一个长度为 n 的数组,预先按照升序排列,经由 1 到 n 次 旋转 后,得到输入数组。例如,原数组 nums = [0,1,4,4,5,6,7] 在变化后可能得到:若旋转 4 次,则可以得到 [4,5,6,7,0,1,4]若旋转 7 次,则可以得到 [0,1,4,4,5,6,7]注意,数组 [a[0], a[1], a[2], …, a[n-1]] 旋转一次 的结果为数组 [a[n-1], a[0], a[1], a[2], …, a[n-2]] 。%%%%%%%%%%%%%%%%%%
2021-04-13 10:13:34
127
2
原创 算法刷题的输入问题以及哈希表查找
前段时间参加笔试在数据输入问题上卡了好长时间,大厂笔试“缺德”,不像Leetcode的那么友好自动输入验证。单数字输入# 单个整数输入a = int(input()) # 一个整数'''例如>>>a = int(input())>>>5>>>a = 5'''# 两个数怎么办?a, b = map(int, input().split()) # split() 括号空->空格分隔,','->逗号分隔'''例如
2021-04-01 11:06:47
174
原创 Dataset创建之前需的txt存放Python实现
import osa=0while(a<1024):#1024为我们的类别数 dir = './data1/images/'#图片文件的地址 label = a#os.listdir的结果就是一个list集,可以使用list的sort方法来排序。如果文件名中有数字,就用数字的排序 files = os.listdir(dir)#列出dirname下的目录和文件 files.sort()#排序 train = open('./data1/train.txt'
2021-03-24 10:42:47
172
1
原创 Anchor Based和Anchor Free
Anchor Based和Anchor Free之间区别主要有以下两点:1.分类差异(关键正负样本定义)2.回归差异1.分类差异:现阶段的算法多尺度预测,即GT是由哪一个特征层和位置Anchor预测。Anchor Based是由IoU来确定哪层和哪个位置的Anchor来预测,这个的选择是根据图像中目标物体的大小来决定。有个很牛逼名字叫启发式引导。Anchor Free是Scale Ratio确定GT在哪层,利用Center Sampling确定那些位置是正样本。现阶段的Anchor Free的检测
2021-01-21 13:43:54
1090
原创 Yolo-v4的CSPNet(Cross Stage Partial Network)
CSPNet介绍:计算机视觉的任务很依赖昂贵的计算资源,提出了跨阶段局部网络(CSPNet)解决以往工作中需要大量推理计算的问题。CSPNet易于实现,并且足够通用,可以处理基于ResNet、ResNeXt和DenseNet的体系结构。主要的作用:提高CNN的学习能力;减少计算时间;减少内存。每一个block按照特征图的channel维度拆分成两部分;一部分正常走网络,一部分直接concat到这个block的输出。详细介绍参考博客CSPNet论文,发表于CVPR2019...
2021-01-12 15:37:06
2853
1
原创 Yolo-v4的loss函数
在Yolo-v4中使用的loss函数——CIoU-loss:文章中的损失函数的考虑三个因素:重叠面积、中心点距离和长宽比其中:v是长宽比的相似性;c是下图对角线距离;a是权重参数。大致的loss的流程如下:IoU GIoU DIoU CIoUIoU-loss介绍:当预测框和GT框没有相交,则loss函数为1;在反向传播过程中无法梯度计算,且在相同的IoU却反映不出实际情况,如图所示。GIoU-loss介绍:在上图中所示,引入最小封闭形状C(C可把A,B包
2021-01-12 15:12:25
3488
原创 Yolo-v4中SAT和DropBlock介绍
DropBlock: A regularization method for convolutional networks
2021-01-12 13:55:30
997
1
原创 Yolo-V4数据增强
数据增强方式:调整亮度,对比度,色调,随机缩放,剪切,翻转,旋转等;Mosaic data augmentation:Mixup:两张图象按照不同的比例混合,分类结果按照混合比例分配;Cutout:随机将图片中的区域大小(个人观点裁剪区域图像大小为0.25左右较为合适,比例再大准确率下降明显)裁剪用0填充,结果分类不发生变化;Cutmix:随机裁剪图像的区域大小,不填充0而是随机选择其他样本的裁剪区域大小填充,结果根据裁剪填充的比例分类【Cutmix = Mixup + Cutout】。对比:
2021-01-12 12:39:23
950
原创 在Notebook中查看环境路径、添加环境和切换环境
查看环境:在开发环境比较多的时候,说不定可能会发生不知道使用的是那个环境。因此:import sysprint(sys.executable)#### 返回的结果就是环境的路径====================================================================添加环境:Step1:在终端(anaconda下)source activate 虚拟环境名# 在windows环境中且使用anaconda(miniconda)配置的环境:#
2020-12-31 09:35:36
1612
3
原创 Pytorch对图像增强的python实现
直接上代码介绍的也比较详细import torchvision.transforms.functional as TFfrom PIL import Imageimport osfrom skimage.util import random_noisefrom skimage.filters import gaussianimport cv2# 擦除图像中某块区域def erase_and_save(image_path, target_dir, position, size):
2020-12-22 09:37:37
472
原创 运行tensorflow-gpu报错
已经安装好对应版本的cuda和cudnn之后使用tensorflow依旧报错,错误如下:2020-12-03 15:00:04.386786: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'libcudart.so.10.1'; dlerror: libcudart.so.10.1: cannot open shared object file: No such
2020-12-03 15:09:15
185
原创 faceshifter源代码解读(一)
源代码:https://github.com/taotaonice/FaceShifter源码有点不友好哦。。。。。。先看train-AEI.pyfrom network.AEI_Net import *from network.MultiscaleDiscriminator import *追到network模块,模型的结构。AEI_NET和判别器的内部结构。一)AEI-NET.py包括:1、多联合特征提取encoder的搭建,使用的kernel_size=4,前向传播,建议推倒一下很简单
2020-11-26 11:12:38
732
5
原创 ubuntu18.04安装CUDA+Cudnn+Tensorflow
查看电脑是否支持intel不做赘述;一定要看好对应的cuda!!!!!!!!!!!提前搞好驱动和g++和gcc对应的cuda版本,可以在网上查看一下!!!!!!我是安装cuda10.0 + cudnn7.5 + Tensorflow-gpu 1.14(差不多可以跑所有tensorflow1.+版本程序)一、Cuda下载安装(安装cuda10.0)直接上连接CUDA10.0下载地址https://developer.nvidia.com/cuda-10.0-download-archive?t
2020-11-21 10:16:18
262
1
原创 PixelShuffer上采样
PixelShuffer是通过strides小于1来实现卷积进行上采样的。根据计算公式除以步长,当步长小于1也就是给乘以步长的倒数,也就实现了特征图的变大。PixelShuffer是将Tensor大小为(, r^2C, H, W)转换为(,C,rH,r*W)的一个Tensor优点:相比较普通的上采样(使用临近像素填充算法,只考虑到空间因素,忽略channel因素)而言,PixelShuffer结合channel维度的信息来填充像素,去实现超高分辨率的图像生成。...
2020-11-11 14:21:16
197
原创 SyntaxWarning: name ‘pnet‘ is assigned to before global declaration
运行如下代码WEIGHTS_PATH = "./mtcnn_weights/"sess = K.get_session()with sess.as_default(): global pnet, rnet, onet pnet, rnet, onet = create_mtcnn(sess, WEIGHTS_PATH)global pnet, rnet, onet # 错误的出处; pnet = K.function([pnet.layers['data']
2020-11-11 10:19:13
1442
原创 切换gcc和g++的版本
对于低版本的cuda使用安装必须使用降低gcc和g++的版本# eg. install cuda-9.x versionsudo apt-get install gcc-6sudo apt-get install g++-6运行的时候查看版本恢复发现,还是原来版本。sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 88再次查看gcc和g++版本就发现,哦,有趣!是转换后的版本了如果想要切换原版本运行:su
2020-11-10 16:38:55
98
原创 不同版本的cuda切换
假如已经安装更好了不同版本的cuda。当切换版本时:sudo rm -rf cuda # 删除的当前这个cuda的路径sudo ln -s /usr/local/cuda-10.2 /usr/local/cuda # 在cuda-10.2后有一个空格哦,切换路径查看版本stat cuda...
2020-11-09 16:42:08
109
原创 用pip安装个包超时你不烦么?
安装三方库的时候真的是一次又一次出错,您受累,劳驾看完。这种情况难受么?马上就要成功了,给您冒这么一个。Read timed out.怎么办呢?解决办法:pip --default-timeout=100 install -U pip注:也会失败哦...
2020-11-06 15:45:32
74
2
原创 opencv-python将两个文件夹下的照片拼接一起,然后保存
读取数据流,本段代码是对图像的输入拼接简述:两个文件夹,每个文件夹中包含相同数量的照片和相同的label,需要两个文件夹下的照片需要拼接,然后显示。import cv2 as cvimport numpy as npimport requestsimport osimport mathimport fnmatchimport shutilimport timeimport datetimeimport jsonimport redef is_file_match(filena
2020-10-29 20:59:25
1504
5
原创 2020-10-21
channels:https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/win-64/https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/win-64/https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/win-64/https://mirrors.tuna.tsinghua.edu.cn/an
2020-10-21 17:22:08
127
原创 No module named torch_sparse, torch_scatter等 .whl文件
pytorch 遇到No module named 'torch_sparse’之类的问题不要慌,更不要下载Microsoft Visual C++ Build Tools 2015进行编译,Word天呢,要累死啊。。# 这个地址https://github.com/rusty1s/pytorch_sparse# 下拉到 Readme 的 Installation 点击 here (蓝色),会有不同的版本,需要哪个下哪个。我下载的是1.6版本。InstallationBinariesWe p
2020-09-17 10:25:52
629
原创 问题
dropout会改变数据分布,在训练集和测试集中的样本不一样。该如何解决?dropout层会改变整体的方差,使得训练时候方差大于测试方差,那么解决的方案就是冻结dropout层,然后重新对模型训练一两个batch就可以了。dropout解决过拟合(1)取平均作用:dropout掉不同的神经元如同训练不同的网络,随即删除会使网络结构已经不同,整个dropout过程就相当于对对多个不同网络进行的平均。不同的网络有不同的过拟合,通过一些互为“反向”的过拟合相互抵消就可以达到整体上减少过拟合。(2)减少神经
2020-08-25 00:24:27
223
原创 43.字符串相乘
给定s和t两个字符串,如:s = ‘2’,t = ‘3’ ,返回结果 ‘6’。其中一种解法,使用辅助函数,将不使用内置函数,将字符串转化为数字,然后对数字相乘。class Solution: def multiply(self, num1, num2): def helper(s): dict = {'0':0, '1':1, '2':2, '3':3, '4':4, '5':5, '6':6, '7':7, '8':8, '9':9}
2020-07-24 21:58:08
91
原创 排列组合子集问题
这一类型题目都有一个共同的特点,通过对树的遍历来解决这种问题。说来惭愧,是根据一篇博文上的java改过来的。全排列:[1,2,3]排列可能,没有重复元素全排列二:包含重复元素,所以在排列过程中会出现重复现象,只需要修改判断语句if not nums and tmp not in res:即可class Solution: def peemute(self, nums): res = [ ] n = len(nums) def backtrack(nums,tmp): if not nums: res.
2020-07-24 10:46:50
142
原创 48. 旋转图像
旋转图像给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例 1:给定 matrix =[[1,2,3],[4,5,6],[7,8,9]],原地旋转输入矩阵,使其变为:[[7,4,1],[8,5,2],[9,6,3]]解析:双指针,详情参考力扣官方解答class Solution: def trap(self, height): .
2020-07-20 22:18:32
75
原创 53. 最大子序和
最大子序和给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。进阶:如果你已经实现复杂度为 O(n) 的解法,尝试使用更为精妙的分治法求解。class Solution: def maxSubArray(self, nums): res = nums[0] ### if nums eq.
2020-07-19 21:46:53
74
原创 54. 螺旋矩阵
螺旋矩阵给定一个包含 m x n 个元素的矩阵(m 行, n 列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。示例 1:输入:[[ 1, 2, 3 ],[ 4, 5, 6 ],[ 7, 8, 9 ]]输出: [1,2,3,6,9,8,7,4,5]示例 2:输入:[[1, 2, 3, 4],[5, 6, 7, 8],[9,10,11,12]]输出: [1,2,3,4,8,12,11,10,9,5,6,7]解答:当时的第一想法就是转圈圈,设置上(up)、下(down)、.
2020-07-19 21:35:30
129
原创 12.整数转罗马
给定一个数字,看这个数满足在13个字符中几个。比如:2786 = 21000 + 500 + 2100 + 50 + 3*10 + 5+1;class Solution: def intToRoman(self, num): nums = [1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1] scope = ['M', 'CM', 'D', 'CD', 'C', 'XC', 'L', 'XL', 'X', '
2020-07-19 21:05:29
63
原创 两数相除
使用的是移位操作,写的有点恶心啊乘法和除法类似。相对更加简单。。。class Solution: def divide(self, dividend, divisor): m = abs(dividend) n = abs(divisor) if m == 0 or m < n: return 0 min_val, max_val = -2147483648, 2147483647
2020-07-17 22:53:06
100
1
原创 镜像二叉树
请完成一个函数,输入一个二叉树,该函数输出它的镜像。例如输入:4/ 2 7/ \ / 1 3 6 9镜像输出:4/ 7 2/ \ / 9 6 3 1示例 1:输入:root = [4,2,7,1,3,6,9]输出:[4,7,2,9,6,3,1]class Solution: def mirrorTree(self, root): if not root: return
2020-07-16 21:45:57
76
原创 80删除排序数组中的重复元素Ⅱ
我就想知道为什么代码在pycharm中可以运行出正确结果,可是在leetcode上就是不行呢?class Solution: def removeDuplicates(self, nums: List[int]) -> int: count = 1 new_nums = nums.copy() for i in range(1,len(nums)): if nums[i] == nums[i-1]:
2020-07-16 21:30:20
73
原创 合并和插入区间
合并区间给出一个区间的集合,请合并所有重叠的区间。示例 1:输入: [[1,3],[2,6],[8,10],[15,18]]输出: [[1,6],[8,10],[15,18]]解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].示例 2:输入: [[1,4],[4,5]]输出: [[1,5]]解释: 区间 [1,4] 和 [4,5] 可被视为重叠区间。class Solution: def merge(self, nums): if l.
2020-07-16 21:19:46
90
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人