自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 计算机视觉面试(四)

计算机视觉面试(三)1.手撕NMS 在现有的基于anchor的目标检测算法中,都会产生数量巨大的候选矩形框,这些矩形框有很多是指向同一目标,因此就存在大量冗余的候选矩形框。非极大值抑制算法的目的正在于此,它可以消除多余的框,找到最佳的物体检测位置。实现步骤如下:1.设定目标框的置信度阈值,常用的阈值是0.5左右2.根据置信度降序排列候选框列表3.选取置信度最高的框A添加到输出列表,并将其从候选框列表中删除4.计算A与候选框列表中的所有框的IoU值,删除大于阈值的候选框5.重复上述过程,直到

2021-12-23 16:08:37 2472

原创 计算机视觉面试(三)

计算机视觉面试(三)1. 使用大卷积核的好处在卷积神经网络中,感受野(Receptive Field)的定义是卷积神经网络每一层输出的特征图(feature map)上的像素点在输入图片上映射的区域大小。再通俗点的解释是,特征图上的一个点对应输入图上的区域,如下图所示:个人感觉使用大卷积核的作用是增大感受野。但是相比于使用一个大卷积核的卷积运算,比如5X5 的卷积运算,跟推荐使用2个3X3的卷积替代,其感受野是一样的。先回顾一下卷积神经网络特征图大小的计算:再回顾如何计算感受野:先可视化一

2021-12-13 10:33:55 2182

原创 计算机视觉面试(二)

计算机视觉面试(二)ROI pooling 作用一、提出的原因对于Two-stage目标检测大概分为两步:1.给定一张输入image找出objects可能存在的所有位置。这一阶段的输出应该是一系列object可能位置的bounding box。这些通常称之为region proposals或者 regions of interest(ROI)。2.根据上一阶段的region proposal确定是否属于目标。这样子可能会导致一些问题:1.检测速度过慢,不能达到实时性要求。2.无法做到end

2021-12-10 14:03:55 2729 1

原创 You Only Look One-level Feature

You Only Look One-level Feature摘要 :本文重新审视了用于一级检测器的特征金字塔网络 (FPN),并指出 FPN 的成功在于其对目标检测中的优化问题的分而治之的解决方案,而不是多尺度特征融合。从优化的角度来看,我们引入了一种替代方法来解决问题,而不是采用复杂的特征金字塔——仅利用一层特征进行检测。基于简单高效的解决方案,我们提出了 You Only Look One-level Feature (YOLOF)。在我们的方法中,提出了两个关键组件,扩张编码器和均匀匹配,并

2021-09-12 22:17:33 230

原创 c++primer第五章 语句

简单语句一个表达式末尾加上分号,就变成了表达式语句空语句,只包含一个分号如果在程序的某个地方,语法上需要一条语句但逻辑上不需要,此时应该使用空语句。//重复读入数据直到到达文件末尾或某次输入等于soughtwhile(cin>>s&&s!=sought){ ;//空语句}使用空语句应该加上注释。多余的空语句并非总是无害的。复合语句:用花括号括起来的语句和声明的序列,复合语句也称快,一个快就是一个作用域。条件语句悬垂else(dangling e

2021-04-01 09:35:57 108

原创 c++ primer第四章 表达式

表达式由一个或者多个运算对象组成的,对表达式求职将得到一个结果,字面值和变量是最简单的表达式,其结果就是字面值和变量的值。表达式的基础c++定义了一元运算符和二元运算符。重载运算符:当运算符作用在类类型的运算对象时,用户可以自行定义其含义。(运算对象的个数、运算符的优先级和结合律都是无法改变的)左值右值:左值可以在表达式左边,右值不能。当一个对象被用作右值的时候,用的是对象的值(内容)当对象用做左值时,用的是对象的身份(在内存中的位置)当一个左值被当作右值使用时,实际使用的是它的内容(值

2021-03-30 09:51:45 92

原创 c++ primer 第三章 字符串、向量和数组

命名空间的using声明::位域操作符std::cin 意思是就是使用命名空间std的名字cin按照规定,每个using声明引入命名空间中的一个成员。位于头文件的代码一般不应该使用using声明。可能会产生名字冲突。标准库类型string标准库类型string表示可变长的字符序列。初始化:string s1默认初始化,s1是一个空串string s2(s1)s2是s1的副本string s2 = s1等价于s2(s1),s2是s1的副本string

2021-03-28 09:56:03 158

原创 c++ Primer 第二章 变量和基本类型

c++ Primer 第二章 变量和基本类型1.基本内置类型c++定义了算术类型和空类型在内的基本数据类型,其中算数类型包括字符、整型数、布尔值和浮点数。类型含义最小尺寸bool布尔类型未定义char字符8位wchar_t宽字符16位char16_tUnicode 字符16位char32_tUnicode 字符32位short短整型16位int整型16位long长整型32位long long长整

2021-03-25 17:09:24 128

原创 深入理解指针(C和指针 第13章 高级指针)

第13章 高级指针指针的各种定义方法注意c语言符号优先级:.的优先级高于 “*”()高于[ ];[ ]高于星号;函数( )高于星号;int abc();//返回值为int类型的函数int abc[3];//int 型数组int **bac();//返回值为“int型指针的指针”的函数 注意()的优先级大于“*”int (*abc)();//返回值为int的函数指针int (*abc)[6];//指向“int型数组”的指针 注意:int *abc[6]=>指针数组,数组中的元素都是指针i

2021-03-20 14:04:31 174

原创 C和指针 第十一章(笔记与习题答案)

第11章1.为什么使用动态内存分配声明一个数组的时候,必须使用一个编译时常量指定数组的长度,一般情况我们使用的方法声明一个较大的数组,这种方法的优点是简单。但是它的缺点多:首先引用人为的限制,如果程序需要的元素数量超过了声明的长度,就无法处理。为了避免这个情况的发生,就得把函数声明的大一些,但是这会导致一个恶化,当程序需要的元素数量较少时,矩形数组的大部分内存空间都被浪费了。这种方法还有的缺点是如果输入的数据数量超过了数组的容纳范围,程序必须以一种合理的方式做出响应。2.malloc函数malloc

2021-03-19 16:58:47 341

原创 C和指针 第九章代码

1.#include <stdlib.h>#include <stdio.h>#include <ctype.h>int n_cntrl;int n_space;int n_digit;int n_lower;int n_upper;int n_punct;int n_nprint;int total;intmain(){ int ch; int category; while ((ch = getchar..

2021-03-18 22:16:11 175

原创 C和指针 第九章、第十章(笔记+问题答案)

第九章 字符串 问题: 回答: 1.优点:操作字符数组的效率和访问的灵活性较高。缺点会引发错误:溢出数组;使用的下标超出了字符串的边界;无法改变任何用于保存字符串的数组的长度。 2.它更合适,因为字符串的长度不能为负。此外,使用无符号值允许表示更长的字符串长度(在有符号的数量中为负)。它不太合适,因为涉及无符号表达式的算术运算可能会产生意想不到的结果。能够报告较长的字符串长度的“优势”很少是有价值的:在具有16位整数的机器上,只有长度超过32,767个字符的字符串才需要报告长度。在具有..

2021-03-18 21:18:15 491

原创 C和指针 第八章 代码答案

#include<float.h>#include<stdio.h>static double income_limits[] = { 0,23350,56550,117950,256500,DBL_MAX };static float base_tax[] = { 0,3502.5,12798.5,31832.5,81710.5 };static float percentage[] = { .15,.28,.31,.36,.396 };double single_..

2021-03-16 19:17:31 381

原创 C和指针——第七章 函数 (笔记+习题答案)

第7章 函数 7.6递归 当函数被调用时,它的变量空间是创建运行在堆栈上的。以前调用的函数的变量仍然保留在堆栈上,但它们被新的函数变量所掩盖,因此不能访问 7.7可变参数列表 一个值的类型无法简单地通过检查它的位模式来判断 1.这些宏无法判断实际存在的参数类型 2.这些宏无法判断每个参数的类型 7.8总结 1。如果一个函数没有返回值,这类函数称为“过程”,返回类型应该是void 2.当一个函数被调用时,编译器如果无法看到它的任何声明,就假定函数返回一个整

2021-03-16 17:42:29 889

原创 C和指针(笔记+习题答案)

第8章 数组1.数组与指针的区别: 数组具有确定数量的元素,指针只是一个标量值 编译器用数组名来记住这些属性,当数组名在表达式中使用时,编译器会为它产生一个指针常量。 数组名就是一个指针常量 声明一个数组时,它同时也分配了一些内存空间,用于容纳数组元素。但是声明一个指针,它只分配了用于容纳指针本身的空间。 数值形参既可以声明数组也可以声明指针,但只有他们作为函数的形参才是相等的。 在下标【】引用中存在这乘法计算。 函数中数组的形参是个指针,在传递过程中年,它实际传递的只是指向数

2021-03-16 11:20:19 3050

空空如也

空空如也

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

TA关注的人

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