美文网首页
Class-Agnostic Counting——模型复现(终篇

Class-Agnostic Counting——模型复现(终篇

作者: PolarBearWYY | 来源:发表于2019-03-04 21:25 被阅读0次
    不学习不行了

    我突然发现,有的图片是这样的:

    反正运行后出错了:

    狮虎说,要整数,但是我给的是浮点数

    我就被打了一顿

    原来没写这句话

    加上了还是不对:

    狮虎让我打印一下draw看看 draw是空的;再打印一下img img也是空的 原来路径错了 这次就对了

    准备画出来所有的时候:

    发现无论一直只能画一个:

    检查了一下,原来是return的缩进不对。

    这样就对了

    于是都画出来了:

    下面开始写批量训练的程序了:

    已经是个成熟的代码了,要学着自己一个一个滴读取了

    对比之前的项目,看看有哪些部分:网络定义、数据、训练

    网络定义已经写好了,数据正在做,训练还没有做。

    很久很久以前,有个叫做WYY的博主,把网络定义已经写好了,突然发现轻松了很多,那就直接抄一下她的,就可以了。

    数据还没写好,开始写数据部分吧

    赶紧拿来face项目的代码,来看看是怎么个写法:

    是将图片和label一一对应。

    简而言之,我现在的问题是,我不会写,把所有的图片都读了的程序。

    首先看一下此处的init是在做什么。init是在指明数据路径,数据转换,以及是训练集还是测试集

    数据分为图片和label两部分,图片如下:

    label如下:

    图片与label是一一对应的 其他部分不改,画框的地方改一下

    红色部分是在读取所有的图片,将它们改成这样:

    之前写过读取标注文件并画出来。

    巴拉巴拉,就是把之前face的拿过来改一下:

    这是标注的路径 这是img们的路径

    注意,label与img两个路径,所以这里要做相应的改正:

    这时候,还不是label与img还不是一一对应的关系,所以要sort一下:

    让他们按照名字排序,这样就可以一一对应了:

    sorted(iterable[, cmp[, key[, reverse]]])

    Return a new sorted list from the items in iterable.(会返回一个重新排列好的list)

    iterable(可迭代):可迭代对象,可以是list也可以是dict

    cmp:可以自定义比较规则,这里不详细叙述(比较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,此函数必须遵守的规则为,大于则返回1,小于则返回-1,等于则返回0。)

    key:用于比较的值(主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。)

    reverse:指定是顺序还是逆序(reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认))

    请看以下实例:

    啊,你看,还有sort和sotred的区别:

    先试一下sorted怎么用吧:

    在这之后加上一个sorted吧

    今天是开心的一天!开始写代码咯!

    改正了一些小问题以后,发现还是网络部分有问题:

    总说它没有“孩子”,救救孩子吧 同样的,你看这里,就有啊。

    比较一下,这两身衣服:

    原来是拼写错了,是孩子,不是该子 原来有fc层 优化器这里也有 滴滴哒滴滴哒

    (1)得到“小图”与“大图”:

    1)小图:63*63,切割出的小汽车(随机决定切哪个小汽车,这样可以保证,无论切的是哪个小汽车,都能数出来)

    如果我们认为(0,0)为图像的左上角,则称为im以左到右为x方向,自上而下为y方向,我们以(x1,y1)为左上角顶点,(x2,y2)为该图像中矩形区域的右下角顶点,然后:roi = im[y1:y2, x1:x2]

    获取各个汽车的左上角和右下角的坐标的代码已经写过了:

    这是一个二维数组吧,或者叫做一个矩阵吧

    但是我只需要从中随机取一组即可:任弱水三千,我只取一瓢而已。

    我的瓢如下:

    取得时候出现了以下错误:

    查资料后:

    这下就对了:

    终于啊:

    这里红色的就是说,如果版本更新了,可能会有不同,我们暂时不用管它 这部分应该放在dataset的transform部分 希望今天能调通代码

    (1)dataset模块调试:

    1)实例化一个dataset;

    2)再调用一下(看看这个dataset里面有什么);

    该dataset里面是许多img和许多label 此处不一样是正常的,每次都是新的 注意,这里一开始写错了啊 朕惊 据说我的for循环这里,一直在找文件夹,结果找不到。 改正以后,就对了。

    是不是终于对了:

    还是有点不对,于是今天,我又来改了。

    但是这里还是有点不对,因为txt只读到了文件名,并没有读到文件里面是啥,怎么回事呢。 哈哈哈哈哈

    终于对了:

    你看,就对了啊哈哈哈 就还不对

    在这里说一下,如果到下周三,我这个“数数”还数不完,就不做了。

    好美丽

    heatmap:

    1.先生成一个和原图一样大的全为0的图

    2.计算图上每一个点到中心点的距离

    3.根据距离计算值

    代码已经写好:请看本人github:https://github.com/POLARBEARWYY/Class-Agnostic-Counting

    相关文章

      网友评论

          本文标题:Class-Agnostic Counting——模型复现(终篇

          本文链接:https://www.haomeiwen.com/subject/byrwuqtx.html