like_study_cat
码龄5年
关注
提问 私信
  • 博客:197,729
    社区:8
    197,737
    总访问量
  • 136
    原创
  • 2,083,626
    排名
  • 43
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:上海市
  • 加入CSDN时间: 2019-09-25
博客简介:

like_study_cat的博客

查看详细资料
个人成就
  • 获得110次点赞
  • 内容获得16次评论
  • 获得604次收藏
  • 代码片获得309次分享
创作历程
  • 3篇
    2021年
  • 160篇
    2020年
  • 43篇
    2019年
成就勋章
TA的专栏
  • 图像处理图形学
    1篇
  • c++
    28篇
  • 图像处理
  • 算法分析
    1篇
  • python
    24篇
  • tensorflow
    34篇
  • opencv
    4篇
  • tensorrt
    1篇
  • 目标检测
    11篇
  • 特征提取网络
    14篇
  • Resnet
    3篇
  • 数据结构与算法
    4篇
  • torch
    8篇
  • pspnet图像分割网络
    1篇
  • efficient
  • 谱聚类
    2篇
  • RL
    2篇
  • 图
    1篇
  • pythonGUI
    5篇
  • FCN
    4篇
  • 图片分类
    3篇
  • 图结构与图算法
    2篇
  • 特征可视化
    1篇
  • 深度学习
    6篇
  • VQA
  • 视频分类
    2篇
  • 图像数据增强
    1篇
  • OCR
    2篇
  • faster-rcnn实现
    1篇
  • opencv编译
    1篇
  • deeplab
    4篇
  • 反卷积上采样孔洞卷积
    4篇
  • tf.estimator
    4篇
  • tf.data
    7篇
  • 神经网络完善之路
    7篇
兴趣领域 设置
  • 人工智能
    图像处理
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Window10上CLion配置

或许,你是嫌弃VS太麻烦,操作不方便。或许,你是习惯了IDEA的开发。总之,你就是心血来潮想试试CLion。我相信,看到这篇教程的读者可能已经被CLion搞烦了,什么MinGW,Cygwin都是什么鬼,下载慢的要命,安装慢的要命,各种烦。在本人努力爬坑的情况下,总算找到了一种极简的方法。不说了,进入正题。Window10上CLion极简配置教程1. 首先,下载安装CLion去JB公司官网下载CLion,https://www.jetbrains.com/clion/download/#
原创
发布博客 2021.01.15 ·
1540 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

仿射变换和透视变换

图像处理基本算法--仿射变换和透视变换仿射变换和透视变换更直观的叫法可以叫做“平面变换”和“空间变换”或者“二维坐标变换”和“三维坐标变换”。一个是二维坐标(x,y),一个是三维坐标(x,y,z)。也就是:仿射变换:透视变换:从另一个角度也能说明三维变换和二维变换的意思,仿射变换的方程组有6个未知数,所以要求解就需要找到3组映射点,三个点刚好确定一个平面。透视变换的方程组有8个未知数,所以要求解就需要找到4组映射点,四个点就刚好确定了一个三维空间。图像..
原创
发布博客 2021.01.11 ·
1980 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

轻量级网络论文:GhostNet

GhostNet: More Features from Cheap OperationsPDF:https://arxiv.org/pdf/1911.11907.pdfPyTorch代码:https://github.com/shanglianlm0525/PyTorch-Networks1 Motivation作者分析了一些训练好的网络输出的特征图,发现其中存在大量冗余信息, 一些特征图可以可以由其他特征图经过一些简单的变化得到. 因此提出了能用更少参数提取更多特征的Ghost模块...
原创
发布博客 2021.01.08 ·
1639 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

学C++要看的书

初级阶段:1. C++基础语法:《C++ Primer 第五版》C++语法太过繁杂,很多语法特性一辈子也用不上。对于初学者来说,学完前7章就能写简单的程序。2. 数据结构和算法:《大话数据结构》这实在是一本对新手非常友好的书,暂时先看完前5章就够了。此时应该多做一些练习,可以是简单的小软件或小游戏。3. C++标准库:《C++ Primer 第五版》没错还是这本书,之前7章学了基础语法。现在继续学习8~12章,涵盖了标准库常用组件的基本用法。想完整学习标准库的同学可以在未..
转载
发布博客 2020.12.30 ·
318 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

C++和python

说C++变得越来越像Python,可能有点过分,只不过是对比学习而已,请勿见怪!字面量static const int primes = 0b10100000100010100010100010101100;1原始字符串Python中:path = r'c:
oway'1C++中const char* path = R"(c:\this\string\has\backslashes)";1基于范围的循环Python中:for x in myList:
转载
发布博客 2020.12.30 ·
104 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

常用数据结构总结

前言 所有的容器归根到底都是内存空间的排列方式和在空间上施加各种各种不同的限制所得的。空间排列方式只有线性和链式两种方式,链式是通过记录每一个数据的地址来实现查找下一位数据的。而每一个容器所具有的特性就决定了它所适用的情况,总的来看容器常用的无非是增删改查操作,下面将从适用场景、常用操作来进行总结。 array数组 内存空间为连续的一段地址,适用于提前已知所要存储的数据类型和数量、进行大量的查、改操作,不适用于含有大量交换、删除、增加数据的操作,该容器无法动态改变大小,所以说提前已知存储数..
转载
发布博客 2020.12.30 ·
115 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

迭代器与生成器

迭代器迭代是Python最强大的功能之一,是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。迭代器有两个基本的方法:iter() 和 next()。字符串,列表或元组对象都可用于创建迭代器:实例(Python 3.0+)>>> list=[1,2,3,4]>>> it = iter(list) # 创建迭代器对象>>&
原创
发布博客 2020.12.07 ·
125 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

两种scope:variable与name

两种scope:variable与nametf.variable_scope()是对变量进行命名管理,而tf.name_scope()是对算子(op)进行命名管理,二者相互不影响。见下例: import tensorflow as tf for i in range(10): with tf.name_scope('test'): a = tf.constant([1]) b = tf.constant([1]) c = a + b
转载
发布博客 2020.12.07 ·
197 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

lambda

四个用法由于lambda语法是固定的,其本质上只有一种用法,那就是定义一个lambda函数。在实际中,根据这个lambda函数应用场景的不同,可以将lambda函数的用法扩展为以下几种: 将lambda函数赋值给一个变量,通过这个变量间接调用该lambda函数。 例如,执行语句add=lambda x, y: x+y,定义了加法函数lambda x, y: x+y,并将其赋值给变量add,这样变量add便成为具有加法功能的函数。例如,执行add(1,2),输出为3。 将lamb.
原创
发布博客 2020.10.30 ·
543 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

动态库与静态库的调用

目录静态库什么是静态库?怎么创建如何使用静态库的第一种使用方法静态库的第二种使用方法动态链接库动态库是什么?怎么创建如何使用隐式调用显式调用静态库什么是静态库?我们先来说一下什么是静态库,维基百科对其的解释是这样的:在计算机科学里,静态库(英语:Static library, Statically-linked library),或称静态库,是一个外部函数与变量的集合体。静态库的文件内容,通常包含一堆程序员自定的变量与函数,其内容不像动.
原创
发布博客 2020.10.10 ·
2200 阅读 ·
2 点赞 ·
0 评论 ·
12 收藏

C语言--指针一般在什么时候需要申请内存空间

1. 指针所指向的地址需要存放数据的时候需要申请空间。int *q;只有地址,没有内存空间。这个地址是随机地址。(1)没有申请内存空间: int *q; *q = 1; cout<<*q<<endl;错误! 指针变量q没有空间,不能直接存放数据。(2)申请内存空间:int *q = new int;*q = 1;cout<<*q<<endl;正确,存放数据之前给指针变量申请了一个int类型
转载
发布博客 2020.10.10 ·
3611 阅读 ·
11 点赞 ·
0 评论 ·
27 收藏

为指针指向的内存赋值

char **temp_pointer=NULL; temp_pointer=(char **)malloc(sizeof(char *) * number); // 申请内存空间 if(temp_pointer==NULL) // 申请内存空间失败则退出 { fclose(fp1); return -1; } for(i=0; i<number; i++) { //为指针指向的内存赋值 temp_pointer[i]=(char *)malloc(siz...
原创
发布博客 2020.10.10 ·
527 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

为p指向空间赋值

为p指向空间赋值[c]代码库/* 使用calloc来为数组申请空间 */#include <stdio.h>#include <stdlib.h>#define SIZE 5 int main(void) { int *p = NULL; int i = 0; /* 为p从堆上分配SIZE个int型空间 */ p = (int *) calloc(SIZE, sizeof(int)); /* 检查p的分配结果 */
原创
发布博客 2020.10.10 ·
161 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

(C++)函数参数传递中的一级指针和二级指针

主要内容:1、一级指针和二级指针2、函数指针传递的例子3、什么时候需要传递二级指针?4、二级指针在链表中的使用1、一级指针和二级指针一级指针:即我们一般说的指针,就是内存地址;二级指针:指向指针的指针,就是地址的地址;如:int a=1;int *p=&a;  // p为a变量的地址,通过*p可以得到a的值int **q=&p;   // q为p指针的地址,通过**q可以得到a的值2、函数指针传递的例子程序1: #include.
原创
发布博客 2020.10.09 ·
517 阅读 ·
2 点赞 ·
0 评论 ·
4 收藏

二级指针和指针引用函数传参(C++)

在函数的使用过程中,我们都明白传值和传引用会使实参的值发生改变。那么能够通过传指针改变指针所指向的地址吗?在解决这个问题之前,也许我们应该先了解指针非常容易混淆的三个属性:①.指针变量地址(&p)②.指针变量指向的地址(p,存储数据的地址)③.指针变量指向的地址的值(*p)当我们将指针变量与其它变量比较之后就会发现,指针变量同其它变量是相似的,只是多了最后一种操作。比如一个int类型的变量,int x=5;&x取出存储5这个数据的地址,同样,&p也是存储指针的地址,p就是
转载
发布博客 2020.10.09 ·
725 阅读 ·
1 点赞 ·
0 评论 ·
7 收藏

struct与指针

#include<stdio.h> #include<stdlib.h> //一级指针的用途:简介访问结构体,创建一个堆上个变量,储存这个变量的地址 struct info { int num; float score; }; void main1() { //如何构建一个指针变量访问结构体info struct info info1;//构建一个变量in...
原创
发布博客 2020.10.09 ·
2415 阅读 ·
1 点赞 ·
0 评论 ·
17 收藏

struct

结构体很重要,初学者一定要掌握。比如存储一个班级学生的信息,肯定包括姓名、学号、性别、年龄、成绩、家庭地址等项。这些项都是具有内在联系的,它们是一个整体,都表示同一个学生的信息。但如果将它们定义成相互独立的变量的话,就无法反映它们的内在联系:char name[20]; //姓名int num; //学号char sex; //性别int age; //年龄float score; //成绩char addr[30]; //家庭住址而且问题是这样写的话,只是定义了一个学生,如果.
原创
发布博客 2020.10.08 ·
177 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

DNN模块

1.OpenCV3.3 DNN模块介绍在OpenCV3.3版本发布中把DNN模块从扩展模块移到了OpenCV正式发布模块中,当前DNN模块最早来自Tiny-dnn,可以加载预先训练好的Caffe模型数据,OpenCV做了近一步扩展支持所有主流的深度学习框架训练生成与导出模型数据加载,常见的有如下:CaffeTensorFlowTorch/PyTorchOpenCV中DNN模块已经支持与测试过这些常见的网络模块:AlexNetGoogLeNet v1 (also referred to as .
原创
发布博客 2020.10.08 ·
504 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

数组元素首地址和数组首地址

int main(){ int arr[10] = {0}; printf("数组元素首地址 :%d
",arr); //数组元素首地址 2293280 printf("数组首地址 :%d
",&arr); //数组首地址 2293280 printf("数组元素首地址+1 :%d
",arr+1); //数组元素首地址 2293284 printf("数组首地址+1 :%d
",&arr+1); //数组首地址 2293320 retu.
原创
发布博客 2020.10.07 ·
2994 阅读 ·
2 点赞 ·
0 评论 ·
9 收藏

C/C++申请和释放内存

new 和 delete 是 C++ 用于管理堆内存的两个运算符,对应于C语言中的 malloc 和 free,但是 malloc 和 free 是函数,而new 和 delete 是运算符。除此之外,new 在申请内存的同时,还会调用对象的构造函数,而 malloc 只会申请内存;同样,delete 在释放内存之前,会调用对象的析构函数,而 free 只会释放内存。###C++new运算符申请内存:将调用相应的 operator new(size_t) 函数动态分配内存,在分配到的动态内存块上
原创
发布博客 2020.10.07 ·
680 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏
加载更多