若干年前有句话“干掉熊猫我就是国宝了”,现如今感觉历史在一天天重演 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
sgissb1
V2EX    程序员

若干年前有句话“干掉熊猫我就是国宝了”,现如今感觉历史在一天天重演

  •  
  •   sgissb1 2016-09-06 17:54:51 +08:00 9222 次点击
    这是一个创建于 3323 天前的主题,其中的信息可能已经有所发展或是发生改变。

    无论在 v 站,还是其他技术类站点,有时会看到讨论或变相讨论“某某玩意是世上最好的”之类话题。

    就连前段时间,我在做的一个图像处理的项目(用最简单的图像预处理+目标检测来识别答题卡),都被一哥们当着全公司的面说:“是不是答题卡这个项目调一下 opencv 的 api 就行了”,接着这哥们也充斥着各种雷人雷语:“以前做过机器学习,我觉得这个就很简单,可能不超过一百行或者一千行就能写出来的东西”。如果我不是和这位雷人王打过交道的话,我估计都受不了。毕竟 85 还是 82 的哥们,单身,嘴上爱挂着他们 B 公司如何如何的牛逼啥的,其实带个项目都一塌糊涂(早些年我 boss 喊我让我要么连同他的项目一起带算了,看他那么雷,还和我平级,我果断拒绝)

    其实早在很多年前(刚毕业 0-2 年)的时候,我也很喜欢对某某技术、某某框架评头论足。自从后来接触了 chromium 、 webrtc 以及一个完整的音视频双向直播以后,我开始逐渐看开。

    技术似乎现在被分为两类:工程类技术、科学类技术。 其实大家现在接触的,大多数是工程类技术,为了解决一类或者一群工程类问题演变出来的技术,没有谁好谁坏。只有谁更适合应对这样的场景。正如《设计模式》还是某本书前沿中说的一样:“好的构架师不会对某种设计模式评头论足,而是觉得这样的设计似乎更自然一些。”

    人往往就是被一时冲昏头脑,就如我所说的那个雷人王一样,他认为我能做出来,他也一样能做出来一样。当我当着大家的面说:“我们主要在降噪、二值化和目标检测上做了一些事情时”,他居然还没有听明白时,我已经意识到他好像对部分知识的欠缺,以至于我后来和他说:“以前在学校的时候,我图像方向的,和老师搞过空域上的图像比对和图像 0矢量化压缩”时,他都还不知道放下内心的狂妄。

    年纪大了一点,发现人就好叨叨。有时候很想把一些经验传播给我周围关系好的人,但发现听得进去的不多,以至于变成现实时,也还在一根筋。

    今天也算是看到 v 站以及看书有感而发了。

    86 条回复    2016-09-08 15:39:58 +08:00
    tomczhen
        1
    tomczhen  
       2016-09-06 18:06:45 +08:00   1
    其实反向推断,即便没有科学素养(高数这块)也是能做好程序员的,但是人要保有敬畏之心。
    Khlieb
        2
    Khlieb  
       2016-09-06 18:32:15 +08:00 via Android
    @tomczhen 的确,如果没有敬畏之心,人就会变得谮妄起来。
    ma125125t
        3
    ma125125t  
       2016-09-06 18:33:08 +08:00   2
    这个世界上存在这么一批人,浮夸,烦躁,想要一步登天。在以前的时候,通常出现在娱乐行业,因为那个行业需要这样的人。如今慢慢地充斥到别的领域,工程、科技,甚至科研领域中都出现这批人的身影。我见过每天在 github 上提交一个句号以保持“全绿”并号称自己多么勤奋的程序员,也见到不够资格评两院院士的屠呦呦十几年做研究获得诺贝尔奖。究其原因,我想是与这个飞速发展的时代密切相关的。整个社会以金钱为导向、驱动力,以金钱为评判人的标准迫使着每一个人。我相信无论哪个时代,总会有默默地做自己热爱的事业,或者是为了理想做一些事情的人。但也不可避免的,会出现一些沽名钓誉之徒。

    扯远了,抱歉。至于楼主你所描述的那类人呢,通常连沽名钓誉都称不上,纯粹就是水平不够,眼界又比天高,脸皮还厚罢了。
    shijingshijing
        4
    shijingshijing  
       2016-09-06 18:50:31 +08:00
    @sgissb1 对待这种张口就来的人,下次就是一句话,你行你上。下次如果有类似的或者更难的图像处理项目,直接跟老板说, xx 在 B 公司做过类似项目,而且他在平时交流中也对现有的 xx 提出过一些意见,我觉得 xx 项目可以让他试试。然后坐看他如何傻逼。

    OpenCV 不过是一个 Framework ,真正的大牛都是玩 Matlab 改进算法的,如果觉得我的方法有问题,那么提出来做技术讨论是可以的;这种靠贬低别人来抬高自己的人,远离即可,次数多了,老板自然会了解实际情况的。

    不过我的脾气一般是直接当面打脸的,这斯不是说什么机器学习么,换了是我我就当面这样说,哎呀,我们这边刚好有个用到了神经网络,有部分代码没怎么看懂,您是高人帮我们看看然后给个实现怎么样?然后速度 google scholar 随便找一个 ANN 方面刚发的论文,中间不用看详细算法,只看作者的实验结果,然后丢给这厮。
    x8
        5
    x8  
       2016-09-06 18:57:25 +08:00
    传播什么呀,没有意义,其他人还觉得是你在装。有人主动问的话另说。
    细节是魔鬼。br />自己过得爽,看得清,就行了,人和人无法相互理解。
    xiangtianxiao
        6
    xiangtianxiao  
       2016-09-06 19:12:18 +08:00 via Android
    啊...难道不是调用一下 OpenCV 的 API 么?
    surfire91
        7
    surfire91  
       2016-09-06 19:24:12 +08:00
    文人相轻
    码农界也差不多
    bdbai
        8
    bdbai  
       2016-09-06 19:45:45 +08:00 via Android
    @xiangtianxiao 你这个头像是啥?
    9hills
        9
    9hills  
       2016-09-06 19:52:45 +08:00
    @xiangtianxiao 瞎说什么<_<,答题卡识别是非常高深的图像识别应用, OpenCV 这种开源的小破程序也能搞出来?
    xenme
        10
    xenme  
       2016-09-06 20:03:43 +08:00 via iPhone
    @9hills 我怎么感觉答题卡这种规则的简单二值话就好了啊。
    sgissb1
        11
    sgissb1  
    OP
       2016-09-06 20:07:37 +08:00
    @tomczhen
    @Khlieb

    一句话,别太狂就好,各有各的道。解决工程问题中的高手确实有,不过可能经历奇葩点,多数狂的人,都不怎么样(实际工作产出)。


    @shijingshijing 你还真别说,我就说:“你行你上”,谁他更不要脸,开始和我扯公司战略问题,我就尿了。不过也不是第一个遇到这种人了。

    opencv 确实类似框架,不过里面还是有很多微积分的东西。用 matlab 验证算法是最快和有效的,我的降噪就是在 matlab 里面验证的,自己捣鼓着玩蛮有意思的。其实我也没打算给他一般见识,关键这哥在我们公司狂的出奇,毕竟我们是小公司,人家 B 公司出来的,反正具体也不多说了,雷死很多人了。

    主要感慨国内真正搞算法的不过,很多都是挂着羊头卖狗肉的。我这边招的音视频和图像算法,有些人连算法这个词都不配(广义的算法可以理解成一种业务逻辑,关键连自己做过的事情都讲不清楚。)
    Trim21
        12
    Trim21  
       2016-09-06 20:09:25 +08:00   1
    @bdbai 莱娜图
    sgissb1
        13
    sgissb1  
    OP
       2016-09-06 20:10:12 +08:00
    @xiangtianxiao
    @9hills

    你们看,你们大神来打脸就不好了。毕竟我也没读过什么书,吓倒腾。我就会少数几个 api 没办法,我们这边缺人不嫌弃请发我一下简历吧,我也不想做了,内推给您的。
    sgissb1
        14
    sgissb1  
    OP
       2016-09-06 20:11:01 +08:00   1
    @bdbai 这个图。。。很有名好不好,这个图的完整版是个有点黄的。当时学校学的时候,就是大多数例子是这张图了
    sgissb1
        15
    sgissb1  
    OP
       2016-09-06 20:16:06 +08:00
    @lizon 我就和一个巴掌这么多的人关系好(或者我认为值得交心的),其他人我懒的管。

    不过后来想想也算了,现在脱离以前那个岗位,我和别人的兄弟做更有意思的事情,想想还是蛮好玩的。以前的事情,就让那些人自己体会好了。

    不过说真的,我还真是看在我领导的面上,我就觉得我的直接 boss 和间接 boss 值得跟,要不谁会投入这么多,到头来狗咬吕洞宾。
    9hills
        16
    9hills  
       2016-09-06 20:20:34 +08:00 via Android
    @sgissb1 说你难度地低你不乐意,说你难度高你也不乐意。
    sgissb1
        17
    sgissb1  
    OP
       2016-09-06 20:23:02 +08:00
    @9hills 您看,我可没有说过难度高低,不是有句话叫:
    会者不难难者不会,我倒是不会所以我觉得难。不过我说那位雷人大哥,我觉得他和我一个范畴的(属于不会的)。

    您的话,我不是很清楚。但您的 id 还是蛮眼熟的,我觉得对您来说应该不难
    sgissb1
        18
    sgissb1  
    OP
       2016-09-06 20:34:50 +08:00
    @ma125125t 英雄不问出处,关键怕就怕在自己输出或者贡献(项目中)不咋地,还很喜欢到处指指点点,自我感觉优越或良好的。

    我都不好意思说,我 boss 问我那个事情的时候,估计就是觉得他人不行了。

    最近我也在反思我自己,其实我基础也不好,工作这么多年,没有沉下心来往数学方面补补一下,现在工作上用到的不是接近数学的,就是直接要用数学的;很是头疼。
    不过能经下心来好好搞搞技术(不管是工程类还是科学类,其实现在我能接触的多数是工程类了,真正和科学沾边的就是编解码的算法,还有特征相关的算法了。),还是蛮开心的。

    最近在看心理学的书,其实狂妄和容易影响情绪还是属于情商方面的问题。所以也在锻炼控制心态,转变一些做法。有时候要证明一个人真的算不算得上顶梁柱,就看这个人能不能被替代就对了(烂代码除外)
    bdbai
        20
    bdbai  
       2016-09-06 22:04:51 +08:00 via Android
    @Trim21 @sgissb1 原来如此。之前读某个图像库的教程时也看到了这张图,觉得眼熟。
    FrankD
        21
    FrankD  
       2016-09-06 23:05:30 +08:00 via Android
    @sgissb1 PlayBoy 的封面怎么就黄了。。。那是性感
    feilaoda
        22
    feilaoda  
       2016-09-06 23:09:54 +08:00 via Android
    说的挺好
    Rubbly
        23
    Rubbly  
       2016-09-06 23:22:22 +08:00
    降噪、二值化、目标检测这几个光是概念上来看是很简单,但是在很多应用场景中也会遇到各种问题,能解决好也不是这么简单,当然 Po 主的重点当然不在这个上面。
    其他很多话还是很同意的,身边也的确遇到过这些人,是很烦。。
    shijingshijing
        24
    shijingshijing  
       2016-09-06 23:22:38 +08:00   3
    @xiangtianxiao
    @9hills

    两位想必是在学校里面做项目用过 OpenCV 吧,二值化的算法实现也不难,确实感觉没什么技术含量。

    不过,二位要是正真做过这种工程项目就知道了,真正做出健壮的应用,能够稳定的输出正确结果,远远不是二值化就能够搞定的,实际工程中要考虑到是不是误图,是不是铅笔污渍,黑框图不满到底图到什么程度算他正确,图的浓度不够怎么处理,这都是要花心思去调整图像处理和模式识别算法的。即使是二值化算法本身,阈值选取也需要大量经验积累然后才能得出的。我以前给朝日新闻做过 Adobe 的 OCR 插件,日本人提供过来的数据,让我目瞪口呆,包括纸张的色纯度、洁净度、反光度都是有大量实际数据记录的,报纸、打印纸、广告纸、牛皮纸等等都有详细的数据支持,所以最后按照他们的思路做出来的东西健壮性这一块特别强,基本上很少有漏识别、识别错误等情况。我特别佩服日本人的。

    V2 上有很多用嘴巴编程的人,这是非常不好的一种现象。希望大家多一些技术性的讨论,不要一上来就这个东西不就是 xx 这种论调。很多东西都是看似容易做实难。
    shijingshijing
        25
    shijingshijing  
       2016-09-06 23:24:41 +08:00
    9hills
    26
    9hills  
       2016-09-06 23:33:47 +08:00 via iPad
    @shijingshijing 然而你说的这些对答题卡识别来说,并不是很困难。

    图像处理水很深,但也不要随便拿一个题目就开始好么。你说这么多也不过是在用嘴巴编程罢了。
    shijingshijing
        27
    shijingshijing  
       2016-09-06 23:36:27 +08:00
    @9hills 真的么?你做一个答题卡识别的看看? show me the code and result.

    看你的资料和以前发的帖子,我估计我们的对话到此为止了。
    9hills
        28
    9hills  
       2016-09-06 23:41:17 +08:00 via iPad
    @shijingshijing 你也可以 show me your code ,愣是吹一个简单的东西,也是呵呵
    9hills
        29
    9hills  
       2016-09-06 23:42:53 +08:00 via iPad
    @shijingshijing 另外既然让我写,那你总得给我提供原图吧,我图像处理虽说外行,但也想试试

    别怂哈
    bengol
        30
    bengol  
       2016-09-06 23:45:01 +08:00
    lz, why are you so diao
    levn
        31
    levn  
       2016-09-07 09:05:58 +08:00
    好无聊额
    sgissb1
        32
    sgissb1  
    OP
       2016-09-07 11:07:11 +08:00
    @FrankD 这怎么就只是封面呢?明显是一部视频好不?

    @Rubbly 感谢,确实概念简单的飞起。不过真心研究一下,还是有很多东西的。降噪就够玩一壶了。

    @shijingshijing
    @9hills
    二位消消气,不要再继续争论了。任何工程问题有简单的做法,也有复杂的做法。就如人脸识别,目标检测一样,最简单就是 opencv 的例子抄一下,然后套个 svm 就可以忽悠用户了。

    但从实际场景出发去看的,有点不一样的。我们的答题卡主要是在普通的 a4 a3 纸张( 70g )上使用,然后给 teenage 的少年们用,所以真正难点有很多。大家都曾经年轻过,知道我们当年如何的调皮的。

    我没有把我们答题卡项目讲的太细,那是我不想说太多这方面,我只想表达。人不能太狂,无知和有知是区别的,我也遇到过一些真大神,他们的谦逊和代码写起来犹豫说普通话一样自然,我也很诧异的。往往无知的人才喜欢那啥啥。

    另外答题卡识别有很多识别方式和场景,只是老板不想用高考哪种方式,要不然也不需要我去做。

    另外 9hills ,劝你一句,你确实是图像处理的外行(至少从你以往的帖子和你的 github 上看),我也是外行。但我已经说了,你想试试你就发简历来,音视频编解码方向的也可以。


    @bengol 我当年热血了一把,在某信上注册了,然后 id 就是:i am just so diao 。。。。
    sgissb1
        33
    sgissb1  
    OP
       2016-09-07 11:07:33 +08:00
    @feilaoda 谢谢哈
    sgissb1
        34
    sgissb1  
    OP
       2016-09-07 11:10:27 +08:00
    @wizardforcel 如果用机读卡还用 opencv ,那我觉得脑子是不是有点问题。不过问题是,我们的场景使用图像拾取设备。^_^
    weisdong
        35
    weisdong  
       2016-09-07 11:12:23 +08:00
    做开发 还要涉及到数学啊,我现在知道为毛程序猿没有女的了,当年分文理科时 很多女生选择文科了。
    sgissb1
        36
    sgissb1  
    OP
       2016-09-07 11:15:03 +08:00
    @shijingshijing
    @9hills

    另外我说一下,我这边的参数大部分都是动态的,不是我在程序里写死的电话号码。我组里有个研究生哥们,号称做音视频很吊的,给他自己一个人用 opencv 做,事实上什么都做不出来,成天就想着趁我不在的时候,拷贝我的 demo 代码。

    然后给了他 demo ,也还是做不出来,连我怎么做的都不知道。降噪有一个分支是自适应降噪,二值化也有一个分支是自适应二值化。

    实际上好的图像处理,都在想办法做到更优的自适应,仅仅倒腾个自适应二值化就够玩的。虽然有很多自适应二值化算法,不过不能直接用。

    我现在用的自适应降噪,只是我通过 matlab 瞎倒腾出来而已,学校的项目不同于商业项目,我也是在学校给老板打工多年的人,这一点我还是很清楚的。

    opencv 里面有很多 api 是不能直接用的,例如他的自适应二值化,就不能满大街乱用的。
    xcodebuild
        37
    xcodebuild  
       2016-09-07 11:21:21 +08:00
    傲慢的人无论是做工程还是做学术都会自以为是,瞧不起其他人(或者其他人从事的事情)。
    9hills
        38
    9hills  
       2016-09-07 11:54:00 +08:00
    @sgissb1 呵呵,传统答题卡开始转进成不同的场景。还投简历,你能开出 80w/year 的薪资再说吧
    laoyuan
        39
    laoyuan  
       2016-09-07 12:09:04 +08:00
    笑眯眯的回应:“是啊是啊,可惜这次交给我们做了,下回一定让你们做。”
    是不是显得情商比较高?
    xiangtianxiao
        40
    xiangtianxiao  
       2016-09-07 12:11:56 +08:00 via Android
    lz 如果公司允许的话,发个图看看呗。
    9hills
        41
    9hills  
       2016-09-07 12:12:00 +08:00
    @sgissb1 另外既然您光临了我 4 、 5 年没更新的 github ,我也看了下您的发帖历史(有个帖子还有简历)
    大概了解了技术水平,不过看这个帖子从开始就充满的那种奇怪的感觉,道不同不相为谋。

    另外絮叨几句,工程实践就是在投入产出中进行平衡,你可以拿答题卡识别各种转进,找各种场景。但是实际上并没有任何的卵用,因为有更简单,更省成本的方案。

    比如你说有人随便瞎涂答题卡,要如何如何识别。你知道以前我们高中怎么解决的么,答题卡上乱写乱画直接 0 分。
    issues
        42
    issues  
       2016-09-07 12:42:25 +08:00
    涨姿势了
    canautumn
        43
    canautumn  
       2016-09-07 12:46:18 +08:00
    答题卡识别是个科学问题,用 OpenCV 很快能写出来不错;不过把答题卡识别正确率从 99%提高到 99.99%则是一个工程问题,光用 OpenCV 的 API 是不够
    9hills
        44
    9hills  
       2016-09-07 12:52:16 +08:00 via Android
    @canautumn 答题卡的准确率 openCV 没有太大的问题,难点是召回率

    但是工程上是可以接受比较低的召回率的
    ericls
        45
    ericls  
       2016-09-07 12:53:55 +08:00
    没读过书的表示以后遇到不懂的就问 遇到牛逼的就学 少说话
    canautumn
        46
    canautumn  
       2016-09-07 13:00:34 +08:00
    @9hills 哦原来是这样?按楼上的说法我以为 OpenCV 只是一个框架,算法要自己写;不知道这个东西还自带答题卡检测功能,而且这个功能可以达到很高的准确率和很低的召回率?
    Troevil
        47
    Troevil  
       2016-09-07 13:14:55 +08:00
    其实很大一部分时风气问题, 现在这个世道 能吹的总是不会饿死
    9hills
        48
    9hills  
       2016-09-07 13:15:35 +08:00
    @canautumn OK ,你要认真,我可以给你详细写下,希望以后多学语文

    OpenCV 自带的方法+简单的数学处理,就可以实现传统答题卡的高准确率识别,但是召回率需要各种优化

    另外 OpenCV 不是一个框架,你可以理解是一个 interface 集合,和框架是完全不同的两回事
    framlog
        49
    framlog  
       2016-09-07 13:25:16 +08:00
    貌似 opencv 有对象识别,只要给训练好的 xml 就行
    canautumn
        50
    canautumn  
       2016-09-07 13:30:26 +08:00
    @9hills 我语文不好,“简单的数学处理”这几个字没办法忽略吧?
    9hills
        51
    9hills  
       2016-09-07 13:35:39 +08:00
    @canautumn 呵呵,你自己去看你的发言和我的留言

    你的:答题卡识别是个科学问题,用 OpenCV 很快能写出来不错;

    我的:答题卡的准确率 openCV 没有太大的问题,难点是召回率

    哦,好像都省略了『 API 』,只允许你省略,不允许我省略
    sgissb1
        52
    sgissb1  
    OP
       2016-09-07 13:43:07 +08:00
    @9hills 你这人怎么这么搞,你场景都给我定好了?你怎么不来做 CEO ?
    sgissb1
        53
    sgissb1  
    OP
       2016-09-07 13:45:47 +08:00
    @canautumn 请不要和 80w /year 的大神继续聊了,我看着提醒都很烦了。

    哥们你让一步,我错了,我不该和大神去争的,毕竟世界是围着他转的。
    9hills
        54
    9hills  
       2016-09-07 13:48:42 +08:00
    @sgissb1 80w /year 只是弥补和像你一样的同事共事的精神补偿金。

    另外我终于发现我为什么看到这个帖子立刻很反感,细看了下,原来是喜欢背后同事坏话,这种很 Low 的行为,我只能希望你同事不上 V
    canautumn
        55
    canautumn  
       2016-09-07 13:49:44 +08:00
    @9hills 我没有省略“用 OpenCV ”这个“用”字呀…
    sgissb1
        56
    sgissb1  
    OP
       2016-09-07 13:50:07 +08:00
    @xiangtianxiao 图没有,我们是老师自动在页面上编辑题目,然后自动生成图片,打印机打印出来,给学生做,再收回来处理。

    特征是由我们做图像的人给出来。
    canautumn
        57
    canautumn  
       2016-09-07 13:51:38 +08:00
    @sgissb1 聊天嘛,反正现在大家都没什么事。
    sgissb1
        58
    sgissb1  
    OP
       2016-09-07 13:54:01 +08:00
    @canautumn 垃圾信息太多,我都脑子过滤不过来了。又不见得牛逼的可以改变世界,还这么狂。我都 block 了,哥们你也省省 v 币。你注意看回帖,谦逊的人,很快就有变化。狂妄的人正和我说的那个雷人王各种雷同着。

    我实在忍不住了,差点笑喷了。
    xxdd
        59
    xxdd  
       2016-09-07 13:55:45 +08:00
    看来题主很稳重 要是我遇到这种人 撕逼加打脸( ̄ ̄")
    SmiteChow
        60
    SmiteChow  
       2016-09-07 13:59:09 +08:00
    是这样的,不仅计算机科学分为学院派和工程派,现在连工程派都开始分化了:一部分人追求工程极致(代码风格按字符级别矫正,分层接口细到大部分代码是为框架而生,模块化到文件数是 feature 的数倍等),一部分人追求一般的工程质量+适时的重构+ work around 。

    我看得很开,觉得大千世界,缤纷不同才精彩。
    9hills
        61
    9hills  
       2016-09-07 14:01:16 +08:00
    @sgissb1 得了吧,就一个背后祥林嫂,还巴巴的不断回复找其他人的认同感,这是心理多脆弱。。
    SmiteChow
        62
    SmiteChow  
      &nbp;2016-09-07 14:02:51 +08:00
    忘了说了,倒不是攻击,我只是分类一下: uncle bob 就是追求工程极致的榜样, ying wang 和我自己应该算后面一类
    tjxjj
        63
    tjxjj  
       2016-09-07 14:07:53 +08:00
    也要好好磨砺一下自己的性格
    和这个世界相处,真的不容易
    9hills
        64
    9hills  
       2016-09-07 14:10:10 +08:00
    @SmiteChow 我是前面一类,可能更加过一些。有些需求如果可以用非工程的办法解决,那就不用工程的办法。

    再举个例子,比如某人做的答题卡识别的召回率比较低,只有 99.9%,也就是 一千份卷子中的一份需要人工识别
    而从 99.9% 改进到 99.99%,可能需要耗时一个 RD 7 个工作日,价值 3000 块。

    但是卷子总量只有 100w 份,也就是人工需要识别 1000 份,随便招个临时工一会就弄完了,价值 300 块。


    那我会选择 2 ,只有当 2 的成本大于 1 的时候,才会选择 1
    byron
        65
    byron  
       2016-09-07 14:15:17 +08:00
    歪个楼。
    一堆扣子,基本没有特征点的这种。
    要进行数量的识别,用什么思路搞比较好呢?

    类似下面这种口子。

    zhicheng
        66
    zhicheng  
       2016-09-07 14:46:55 +08:00
    @byron 这是没特征?
    sgissb1
        67
    sgissb1  
    OP
       2016-09-07 16:30:37 +08:00
    @xxdd 感谢,其实我并不是非常稳重的人。

    @SmiteChow 还有派系不明确自己造轮子的。别忘了他们,他们在任何行业,任何工作上都有。

    @tjxjj 其实也不见得不容易,关键看遇到什么样的人。

    @byron 粗略的特征好明显好不,你这是来打我的脸吗?如果你的大部分图像是这样的场景拾取的,主要问题还是要想办法去掉背景中的纹理(板凳“皮”上的纹理),接着要考虑粘连的情况。因为有些纽扣做完二值化之后可能会出现粘连的情况。简单的直接用边缘检测可能不行。另外如果颜色(伪颜色)都是确定的,也可以考虑分通道处理。

    办法也很多,看你的场景了。纽扣检测和计数的我也见到很多哥们在做,不过不清楚具体的情况,没做过。
    hinkal
        69
    hinkal  
       2016-09-07 16:51:49 +08:00
    楼主说的这种人我也遇到过,水平一般,但装逼水平满分。但是不过觉得楼主也是值得自我批判的,说白了就是看不惯年轻人藐视自己。
    CTO
        70
    CTO  
       2016-09-07 17:35:04 +08:00
    我倒是蛮懒惰、傲慢、缺乏耐性的。。
    zhicheng
        71
    zhicheng  
       2016-09-07 17:44:23 +08:00
    @sgissb1 这个根本不需要考虑纹理。。。
    introom
        72
    introom  
       2016-09-07 17:52:03 +08:00 via Android
    不知道,反正只要是应用数学,我觉得都大同小异,
    wanttofly
        73
    wanttofly  
       2016-09-07 17:55:28 +08:00
    以前老是觉得自己太张扬,后来渐渐变得太谦卑(对,就是这个词,我觉得太合适),好像有些不自信了,逛多了知乎和大牛的个人博客,渐渐会把自己看的很低。当然了,涉及到程序的时候的自信还是很多的,哈哈。但是就感觉世界上牛人实在太多,周围牛人实在太多,自己太渣。我的这种想法是不是也有点惨
    anyforever
        74
    anyforever  
       2016-09-07 17:55:41 +08:00
    楼主就是个爱操心的命(非贬义),从这几点上就能看出来对方的态度,估计再过一段时间,你们就会拉开差距,不用急。
    zhicheng
        75
    zhicheng  
       2016-09-07 18:00:02 +08:00   2
    shijingshijing     76
    shijingshijing  
       2016-09-07 18:24:23 +08:00
    @zhicheng 分水岭也是玩的溜啊~ 边缘识别出来以后,考虑求取各区域的 RGB 均值,可以分出粉色和白色。

    PS :现在用 Python 也可以这样玩了啊,我一直是在 C/C++下面弄 OpenCV 。
    shijingshijing
        77
    shijingshijing  
       2016-09-07 18:30:45 +08:00
    @sgissb1 不要浪费时间。
    sgissb1
        78
    sgissb1  
    OP
       2016-09-07 20:48:56 +08:00
    @shijingshijing
    @zhicheng

    牛逼哈,我当时想到距离变换。哈哈哈哈。

    不过可能是特征和原始图的关系,我赶脚 otus 不能直接做二值化(实际场景中)。看来多虑了,应该就事论事去看图。
    sgissb1
        79
    sgissb1  
    OP
       2016-09-07 20:50:20 +08:00
    @shijingshijing 已经那啥了,你懂的。
    byron
        80
    byron  
       2016-09-07 23:58:23 +08:00
    @sgissb1 嗯,这一张是比较好识别的。
    现在的需求是,固定的摄像头实时监控,之后点一个按钮,会抓拍一张照片,然后识别这张图片上的扣子数量。
    而这张图片可能由于光线原因、角度原因,造成的扣子大小、颜色都会有不同。

    我之前的做法是,阈值变换后,计算边缘,算有多少个圆。相连部分就来计算面积。

    现在的问题就是必须固定摄像头,固定角度,高度,光线环境差不多一定,才可以很好的识别。

    我们想达到的目的是,不论啥设备,啥分辨率,对焦,都不考虑,随手一拍即可完美识别。
    byron
        81
    byron  
       2016-09-08 00:01:22 +08:00
    喔,我用的是 AForge
    sgissb1
        82
    sgissb1  
    OP
       2016-09-08 10:05:04 +08:00
    @byron 你说的最后一句话比较头疼。如果要考虑有颜色的,那么伪色彩会很头疼。有些摄像头会把白色拾取成粉色
    byron
        83
    byron  
       2016-09-08 10:21:04 +08:00
    @sgissb1 你说的没错,所以我尝试颜色后,就放弃了,转而做阈值的处理,但是现在是碰到极限了。

    而且不是专业做这个的,只是碰到一个小项目需要用的图像识别,如果没有啥好的方法,现在也只能这样了。
    sgissb1
        84
    sgissb1  
    OP
       2016-09-08 10:32:31 +08:00
    @byron 其实最难还是从摄像头拾取,就算摄像头是固定的,但也不好弄。

    我们这边最终的目标是要做到拍照识别(连通普通楷体识别,不用识别手写体)。

    不过想想也确实麻烦,摄像头拾取进来还会有抖动问题,一大堆噪声问题。确实回帖里那哥们给的图像对突出(特征),不过实际用就没这么好弄。最近也在发愁,好在我们不用考虑颜色问题,后续可能会加强一些图像底层处理(非机器学习部分),后面再把机器学习部分连起来,或许会好点。

    我也在一步一步的弄。
    mko0okmko0
        85
    mko0okmko0  
       2016-09-08 15:26:08 +08:00
    早上一看,哇!这帖的回应一定很学术,很有深度,快收藏.
    结果忙完下午一看....太多护贬让这帖的技术价值下降了...

    上周才去一个自动化展,结果发现工厂的视频检测跟自然环境识别是有落差的.双方讨论交集好少.
    影像前处理也是个门槛,每个人做法不一样也很难讨论谁好谁不够好.

    伪色问题不是也该解决吗?恩...我是自然环境目标辨识的,所以有很多杂讯,伪色,镜像,影子干扰等,所以有认真处理.

    不只 CV 要会用吧,太多影像辨识的相关软硬体(没错,软硬都有)需要掌握,还有自己要会写功能来实现需求.
    后面靠 FPGA 来实作加速也是要有准备,不然不能实时完成辨识,赚钱方面就有困扰.
    还有训练样本仓储,结果我又研究了影音编码跟档案系统,并行连机计算,跨好大(累.

    自然环境识别数量这问题我一直没有解决的很好.因为我焦点都放在任意目标正确性上了.
    任意目标,所以没有所谓的特定特征了,还有,我无法选择视讯来源,甚至图片来源.

    我也是走到快弄公司自己走了.

    共勉的话:
    当你自己做到敢成立公司走辨识这条路了,不管你成绩如何,我都认为你值得尊敬,
    因为你用行动表明你的心.而不是靠嘴.

    希望这帖能有更多技术交流.
    sgissb1
        86
    sgissb1  
    OP
       2016-09-08 15:39:58 +08:00
    @mko0okmko0 3Q , v 站很容易水贴,平常心。回帖里能有几个再讲讲和工程、技术有关的人就算不错了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2705 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 49ms UTC 12:19 PVG 20:19 LAX 05:19 JFK 08:19
    Do have faith in what you're doing.
    ubao 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