使用机器学习数鱼苗的可行性? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
thinkershare
V2EX    机器学习

使用机器学习数鱼苗的可行性?

  •  
  •   thinkershare 2022-04-07 16:42:14 +08:00 3724 次点击
    这是一个创建于 1307 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前一段时间, 一个养鱼的朋友咨询了我一个问题, 就是用手机拍几分钟长的鱼苗视频, 然后用电脑计算数目, 准确性要求 99%左右, 这个在技术上是否可行? 我主要是疑惑视频处理, 因为鱼有相互遮挡, 而且在游动, 识别并标记后该如何去重, 是否可以做到高准确率. 另外她对最终软件的价格也比较敏感, 最好不要超过 1W, 这个成本下, 使用机器学习是否在成本上可接受(包括研发)

    31 条回复    2022-05-21 10:09:51 +08:00
    noe132
        1
    noe132  
       2022-04-07 16:48:50 +08:00   1
    不了解机器学习,但我觉得问题很简单,如果你用手机拍下来的视频,人通过慢放重复播放能数出来,那么相对来说用计算机也能比较容易实现。如果人都没法数,那计算机怎么知道要怎么数
    zuiluo
        2
    zuiluo  
       2022-04-07 16:53:23 +08:00
    清晰度足够的话,技术是可行的。对比视频数鱼,可能用图片数鱼简单的多,

    因为视频可能存在的技术难点,数到 X 条鱼,视频镜头转向别处,过了一会儿,又把镜头转回来。鱼的姿态已经发生了改变+镜头角度视角可能改变,这个时候怎么标记这条鱼已经被数过了
    Puteulanus
        3
    Puteulanus  
       2022-04-07 16:54:01 +08:00   1
    去重可以参考下这个连续帧计算车辆数的
    https://stackoverflow.com/questions/36254452/counting-cars-opencv-python-issue

    连续帧追踪移动目标好像是有不少成熟技术的
    https://python.iitter.com/other/273189.html
    kop1989smurf
        4
    kop1989smurf  
       2022-04-07 16:54:32 +08:00
    机器学习数鱼苗,可以。

    准确性要求 99%,不能拍鱼塘全景,视频内容不清晰,不行。
    westoy
        5
    westoy  
       2022-04-07 17:04:49 +08:00   1
    摄像头方案明显不可行啊

    鱼又不是 2D 穿梭的, 而且小鱼那速度, 你不想拍出一堆动态模糊还得用工业高帧率相机, 还得多机位, 还得改造水下布光

    我记得大致评估鱼群数量不都基于声纳的么....

    感觉加几个 0 都不一定能做出来 80%~90%可用的方案
    sadfQED2
        6
    sadfQED2  
       2022-04-07 17:04:52 +08:00 via Android
    理论上,如果水足够透明,每条鱼都能清晰看到,或许可行

    我想到的思路,

    1.使用 yolo 网络给每条鱼行定位
    2.计算每条鱼的特征值,用来去重(思路类似人脸识别)

    但是 1 万块钱的预算是绝对不够的,1 万块钱别说开发了,你请人做数据标注都不够。另外,99%这个精度也挺难的,真要做到这个级别的精度估计得 500 万起步吧
    GeruzoniAnsasu
        7
    GeruzoniAnsasu  
       2022-04-07 17:05:43 +08:00   6


    高中没听说过标记重捕法?


    投放 100 只假鱼,让其均匀分散,然后重新捕捞采样计数假鱼和真鱼的数量,假设捞回来 2 假 30 真,那么鱼池中约有 30 *(100/2) 条鱼



    这种问题为啥要机器学习
    thinkershare
        8
    thinkershare  
    OP
       2022-04-07 17:07:13 +08:00
    @kop1989smurf 你可能没有养过鱼. 养鱼的每年都需要购买鱼苗, 鱼苗用杯子人一尾一尾的数, 然后放到一个更大的鱼盆里面, 在然后放进鱼塘. 这个过程中, 清晰度, 全景都不是特别大的问题. 核心在准确率, 如果准确度太低 90%一下, 就完全失去了实用价值.
    thinkershare
        9
    thinkershare  
    OP
       2022-04-07 17:08:42 +08:00
    @GeruzoniAnsasu 实际养鱼的反正没人这么用, 具体原因我也不大清楚!
    GeruzoniAnsasu
        10
    GeruzoniAnsasu  
       2022-04-07 17:09:58 +08:00
    为啥我直接跳过了「能不能机器学习」这个过程

    因为不知道大家见没见过鱼苗,都只有拇指那么大点,一池子就是一坨黑糊糊的玩意,然后还有水流光照环境影响,根本就不是拍张照片能数清的,视频游动的就更不显示了,除非你说的是那种一缸子只有三五只的红色锦鲤,对比度大数量少。那还有希望用视觉算法「玩一下」


    鱼苗?

    ……
    thinkershare
        11
    thinkershare  
    OP
       2022-04-07 17:10:27 +08:00
    @GeruzoniAnsasu 买鱼苗不是这个流程
    sadfQED2
        12
    sadfQED2  
       2022-04-07 17:14:03 +08:00 via Android
    @thinkershare 你说的清晰和我们说的清晰不是一个概念,如果要基于鱼的图片做去重,至少要保证鱼的纹理能足够清晰,单纯拿手机摄影我觉得肯定清晰度不够。而且你手机拍摄过程中还可能晃动等各种问题,总的来说,我觉得无论多少钱这个思路都绝对不可行
    GeruzoniAnsasu
        13
    GeruzoniAnsasu  
       2022-04-07 17:15:15 +08:00
    @thinkershare 哦那我想象的场景有偏差,我以为是育苗的过程大范围估算种群的数量。

    你想找的是投放时精确计量一小部分,总量可数的方案

    那应该还是比较可行的,分散度和背景都还比较可控
    thinkershare
        14
    thinkershare  
    OP
       2022-04-07 17:16:44 +08:00
    @GeruzoniAnsasu 不是的, 我看过她拍的那个视频, 那个鱼苗其实用机器识别肯定是可以识别的(2 厘米左右长), 一个 1.5m 直径的盆里面大概 1,200 尾, 因为我搞过自动驾驶的点云识别,主要是去重和成本是否可行! 他们这个行业很多都是用人数的, 因此成本可以在后期复用摊薄研发成本.
    popok
        15
    popok  
       2022-04-07 17:37:04 +08:00   1
    @kop1989smurf #4 他是数鱼苗,不需要鱼塘。
    这种方案有现成得提供方得,我抖音上刷到过很多次了。

    类似的有建材行业数钢管得
    popok
        16
    popok  
       2022-04-07 17:40:47 +08:00

    网上直接就有相关得方案,可行性肯定没问题。
    至于相互遮挡覆盖,多次测试,校正不就完了。
    Laurenfrost
        17
    Laurenfrost  
       2022-04-07 17:41:51 +08:00
    让大家光凭想象讨论可行性,得到的也未必会是你想要的结果,不如你先放个图片或者视频作为例子,这样更直观一些。
    gamexg
        18
    gamexg  
       2022-04-07 17:48:50 +08:00
    你的鱼苗如果是这种密度,感觉没指望。

    https://www.xuxiaomu.com//ueditor/php/upload/image/yumiao3.jpg
    thinkershare
        19
    thinkershare  
    OP
       2022-04-07 17:48:53 +08:00
    @bellfahle 就和 @popok 提供的图片差不多, @popok 有现成的话, 我就去找下链接, 然后扔给她, 让她自己去咨询, 我自己也没时间帮她折腾. 我感觉原理上应该是没问题的, 我也在网络上搜索了一下, 没找到合适的成品解决方案.
    stimw
        20
    stimw  
       2022-04-07 17:52:00 +08:00 via iPhone   1
    @westoy 避免动态模糊不需要高帧率,提高快门速度就可以了。。动态模糊=快门 /帧率
    popok
        21
    popok  
       2022-04-07 17:55:58 +08:00
    @thinkershare #19 https://github.com/avBuffer/AI_AquaticIndustry
    github 上这个老哥就是做这种项目得,让他自己找他把。

    或者市场上还有那种成品机器。1W 预算应该也够了把。

    ttgo
        22
    ttgo  
       2022-04-07 18:01:15 +08:00
    我一个同学,大学老师,就与公司合作搞过这个,当时还有媒体报道过。
    rming
        23
    rming  
       2022-04-07 18:22:36 +08:00
    可以做,不过 1w 好像少了点
    kekxv
        24
    kekxv  
       2022-04-07 18:38:27 +08:00 via iPhone
    要不你量水吧
    dengshen
        25
    dengshen  
       2022-04-07 18:47:17 +08:00 via iPhone
    从大盆到小盆中间搭一个通道。摄像机记录通过通道的鱼苗++就行。有一定的角度防止鱼回流
    icegaze
        26
    icegaze  
       2022-04-07 19:24:28 +08:00 via Android   3
    楼主,
    你思路不对…
    工程上数鱼的尾数是这样的做的:

    用一个细玻璃管,
    内径大于一个鱼而小于两个鱼并列…
    将鱼放置于上面水池,
    玻璃管连接到下面水池,
    开水泵从下到上,循环走水
    驱动水流从上池向下池流,
    裹挟着鱼通过玻璃管,

    用光电计数器即可数清楚,
    一千多尾鱼一个小时就搞定了。
    czqzero
        27
    czqzero  
       2022-04-07 19:39:54 +08:00
    应该是可行的, 之前看过细胞计数(显微镜拍照, 机器学习识别)的 case ,但准确率能否达到这么高就不太清楚了。
    cshlxm
        28
    cshlxm  
       2022-04-07 23:22:37 +08:00
    通过类似过道的形式,可以盘点数量,准确率高低取决于密集度,无遮挡,慢速 100%准确率是可以做到的,成本纯说硬件,一个手机就能实现,软件研发成本就高了,熟练的调参工程师有充足样本的话,1 个月是能搞定的。我们在做类似产品 ,不是数鱼苗,而是猪牛羊
    thinkershare
        29
    thinkershare  
    OP
       2022-04-08 10:44:33 +08:00
    @czqzero 感觉目标太小的话只能提高照片的分辨率, 否则识别精度应该会很差!
    shm7
        30
    shm7  
       2022-05-20 23:57:39 +08:00   1
    @popok 公司以前做过这个,准确率还不错。鱼苗个数太多,个头太小不一定好做。而且要在水面光照比较理想的环境下处理才好。也许可以用 cv2 的一些形状匹配规则来做。
    thinkershare
        31
    thinkershare  
    OP
       2022-05-21 10:09:51 +08:00
    @shm7 我给朋友找了一个成熟的供应商, 我自己不折腾, 没有那个精力. 我感觉要做到商用精度也不是一个人短时间可以搞出来的.
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1368 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 23:58 PVG 07:58 LAX 15:58 JFK 18:58
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86