计算机科学与技术硕士,专注计算机视觉(目标检测、深度学习),关注Linux环境下各算法配置。
我的博客即将入驻“云栖社区”,诚邀技术同仁一同入驻。
title: PaperNotes Instance-Level Salient Object Segmentation comments: true date: 2017-12-20 13:53:11 description: updated: categories: tags: --- https://arxiv.org/pdf/1704.03604.pdf 摘要 现有的显著性检测算法被DL带了一波节奏,但是好像还没有说哪个方法能在显著性区域中找出object instance。
OpenCV trackbar 避免使用全局变量 在OpenCV中使用trackbar是交互式地图像处理的一种方式,例如用于图像阈值分割,用户可以一边调整阈值一边看效果。但是很不幸,绝大多数教程上使用trackbar的样例代码,都通过全局变量的方式进行调用。
题目内容 多选题常见计分法(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 批改多选题是比较麻烦的事情,有很多不同的计分方法。
题目内容 常言道“小赌怡情”。这是一个很简单的小游戏:首先由计算机给出第一个整数;然后玩家下注赌第二个整数将会比第一个数大还是小;玩家下注t个筹码后,计算机给出第二个数。若玩家猜对了,则系统奖励玩家t个筹码;否则扣除玩家t个筹码。
小明PAT考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔N个人就发出一个红包。请你编写程序帮助他确定中奖名单。 输入格式: 输入第一行给出三个正整数M(> m >> n >> s; unordered_map mp; bool printed = false; ...
单身狗(25) 时间限制 300 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue “单身狗”是中文对于单身人士的一种爱称。本题请你从上万人的大型派对中找出落单的客人,以便给予特殊关爱。
C/C++遍历二维数组,列优先(column-major)比行优先(row-major)慢,why? 简单粗暴的答案:存在Cache机制! 稍微啰嗦一点:CPU访问内存(读/写,遍历数组的话主要是读),不是每次都直接从内存上操作,而是先看Cache里是否有所指定地址的值! 这个问题,stackoverflow上有人问过的,结论是:CPU读取内存某地址处的值,并不是每次都去内存中取出来,有时候会从cache里读取。
题目地址:https://www.nowcoder.com/practice/15e41630514445719a942e004edc0a5b?tpId=37&&tqId=21293&rp=1&ru=/activity/oj&qru=/ta/huawei/question-ranking 题目内容 矩阵乘法的运算量与矩阵乘法的顺序强相关。
CMake在Visual Studio下保持目录结构 原理 主要通过CMAKE自带函数source_group来设定。 需要把add_executable()函数进行封装,包裹一层source_group()的处理 例子 现有目录结构 hello/include/hello.
安装matlab sudo mkdir -p /mnt/matlab sudo mount -t auto -o loop /home/chris/Downloads/2016b_linux/R2016b_glnxa64_dvd1.iso /mnt/matlab 用鼠标操作若干步骤。
CMakeLists.txt cmake_minimum_required(VERSION 2.8) project(omp_test) find_package(OpenMP REQUIRED) if (OPENMP_FOUND) message("OpenMP found!") ...
C/C++大端小端判断 说的是变量的高字节、低字节在内存地址中的排放顺序。 变量的高字节放到内存的低地址中(变量的低字节放到内存的高地址中)==>大端 变量的高字节放到内存的高地址中(变量的低字节放到内存的低地址中)==>小端 例如,对于int类型变量x=0x30313233,在x86下,考虑到在内...
warpAffine方法效果很搓,留下大片黑色区域。 使用flip和transpose可以实现逆时针旋转90度。先flip或先transpose均可。 #coding:utf-8 import cv2 im = cv2.
对于基于摄像头的Android应用,实时取景是一个基本前提,通过前置或后置摄像头持续获取捕获到的内容,可以进一步做处理(人脸检测、美颜、滤镜等)。 所谓实时取景,简单说就是调用android的摄像头,把摄像头捕获的内容显示在apk的界面上。
正文 what should I do if... ...my loss diverges? (increases by order of magnitude, goes to inf. or NaN) lower the learning rate raise momentum (with cor...
Python生成PASCAL VOC格式的xml标注文件 PASCAL VOC数据集的标注文件是xml格式的。对于py-faster-rcnn,通常以下示例的字段是合适的: GTSDB 000001.jpg 500 375 3 mouse 0 99 358 135 375 怎样从csv或者txt格式的文件,读取bbox信息,生成xml格式的annotation文件呢?直接逐行写文件肯定可以,但是以后改起来并不太方便,\t和空格的替换也不太方便。
目标检测算法SSD之训练自己的数据集 prerequesties 预备知识/前提条件 下载和配置了最新SSD代码 git clone https://github.com/weiliu89/caffe ~/work/ssd cd $_ git checkout ssd 编译caffe 下载必要的模型(包括prototxt和caffemodel); 运行了evaluation和webcam的例子,会提示caffe的import报错。
C++传值、传引用 C++的函数参数传递方式,可以是传值方式,也可以是传引用方式。传值的本质是:形参是实参的一份复制。传引用的本质是:形参和实参是同一个东西。 传值和传引用,对大多数常见类型都是适用的(就我所知)。
cmake简明使用指南 why this manual? 必须用cmake 很多开源项目如KDE、VTK、OpenCV、Caffe等,都使用cmake来构建。要玩转这些项目,就需要掌握cmake。而且趋势是cmake会更加流行。
brew装snappy,我在mac上已经开了socks5代理,也尝试了lantern或者duotai.org,结果都下载不动。 解决方法:把snappy包手动从浏览器下载,然后放到缓存目录,再执行brew安装,会用缓存文件安装。
opencv安装指南 用包管理器安装 比如ubuntu下是apt-get,mac下是brew。(windows下或许用nuget?)以ubuntu下为例。 查看opencv相关的包 aptitude search opencv 执行安装 发现有很多包。
查找包 aptitude search pkgName pkgName可以有多个(空格分隔) ffmpeg sudo add-apt-repository ppa:kirillshkrogalev/ffmpeg-next sudo apt-get update sudo apt-get inst...
请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。
/* 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。
大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。 n
双指针问题。似曾相识。 /* 小明很喜欢数学,有一天他在做数学作业时,要求计算出9~16的和,他马上就写出了正确答案是100。但是他并不满足于此,他在想究竟有多少种连续的正数序列的和为100(至少包括两个数)。
输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。 题目的描述不是很习惯。题目的意思是把二叉树从左到右遍历,相当于双向链表的遍历。 其实就是让二叉树在x方向上的投影点,顺序输出。
把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。
/* 一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。 思路: 如果是只有一个数字出现一次,那么所有数字做异或就得到结果; 现在有两个数字x,y分别出现一次,其他数字出现两次,那么所有数字异或的结果是result = x^y x^y肯定不等于0,那么找其二进制表示中不等于0的一个位,比如从右到左第一个位置好了,那么用这个位置能区分开来这两个数字,以及其他的数字,每两个一样的数字都处于同一边。
输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 class Solution{ public: ListNode* Merge(ListNode* pHead1, ListNode* pHead2){ ListNode* resu...
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。
如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值。如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值。 最开始的思路就是用map或者set存储。
输入一个链表,反转链表后,输出链表的所有元素。 题目考察链表反转,但是挖坑不是反转本身,而是题目的描述再次不清晰:什么叫“反转链表后输出链表所有元素”?给的代码框架只有一个函数ReverseList,返回值类型是ListNode*,输出不输出和我有什么关系? class Solution{ publ...
汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。
统计一个数字在排序数组中出现的次数。 首先吐槽下出题人的用词,啥叫排序数组?“排序”是个动词好么,“有序”作为一个形容词表示状态,修饰“数组”,才是合适的。 题目考察二分查找,首先找到指定数字最先出现的位置,然后找到最后出现的位置,他们的距离+1就是个数。
每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。
定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数。 class Solution{ public: void push(int value){ v.push_back(value); } void pop(){ v.
网址: http://www.96225.com/smknet/service/apply_cardInput.action 采坑:证件照片上传,一直提示说身份证正面照片上传失败。说明页面只提到“扫描件”,并没有提到图片大小的问题。
题目描述 输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。 输出描述: 对应每个测试案例,输出两个数,小的先输出。 首先一个坑是,返回值的问题。
题目描述 一个链表中包含环,请找出该链表的环的入口结点。 初步想法是每个节点做几个标记,表示是否被访问过,那么遍历链表的时候就知道哪个被访问到了。但是不会实现。 另一个直觉是判断链表有环的算法中出现过的策略,分别按1x和2x速度遍历,总会相遇。
题目描述 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。 /* struct TreeLinkNode { int val; struct TreeLinkNode *left; stru...
题目描述 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 上次面试让写过这个...想要1A的话还是需要熟练些才行。这次写依然没考虑全边缘情况,不过比上次好一些。
题目描述 请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。 思路上还是广度优先搜索(BFS)来做的。BFS是依托于STL的queue作为容器作为存储空间的,并且树的每一层节点的处理都放到一个内部的while循环中; 使用一个vector存储层内节点元素值,然后判断这个vector是否为对称的。
题目描述 在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是重复的数字2或者3。
题目描述 请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。
题目描述 从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。 乍一看就是一个BFS,但是因为太久没刷题都忘记了要使用queue来作为空间存储容器了。 先参考milolip的代码,写出这样的solution: class Solution { public: vector Pr...
题目描述 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)。
题目描述 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数。
题目描述 输入两个链表,找出它们的第一个公共结点。 这题目是指针相关的题目。初步要判断出来,有公共节点的两个指针,应当是链表后半部分相同。这样的话,当遇到第一个相同节点(不是node的val相同,而是node完全相同),则找到了结果。