精华内容
下载资源
问答
  • 如何制定人生目标实现目标

    千次阅读 2017-01-11 22:54:56
    如何制定人生目标实现目标 第一步:分析你的需求。你也许会问:这一步怎么做呢?不妨试试以下方法。开动脑筋,写下来10条未来5年你认为自己应做的事情,要确切,但不要有限制和顾虑那些是自己做不到的,给自己...

    如何制定人生目标和实现目标

    第一步:分析你的需求。你也许会问:这一步怎么做呢?不妨试试以下方法。开动脑筋,写下来10条未来5年你认为自己应做的事情,要确切,但不要有限制和顾虑那些是自己做不到的,给自己头脑充分空间。

    第二步:SWOT分析。分析完你的需求,试着分析自己性格、所处环境的优势和劣势。以及一生中可能会有哪些机遇;职业生涯中可能有哪些威胁?这是要求你试着去理解并回答自己这个问题:我在哪儿?

    第三步:长期和短期的目标。根据你认定的需求,自己的优势、劣势、可能的机遇来勾画自己长期和短期的目标。例如,如果你分析自己的需求是想授课,赚很多钱,有很好的社会地位,则你可选的职业道路会明晰起来。你可以选择成为管理讲师--这要求你的优势包括丰富的管理知识和经验,优秀的演讲技能和交流沟通技能。在这个长期目标的基础上,你可制定自己短期目标来一步步实现。

    第四步:阻碍。确切地说,写下阻碍你达到目标的自己的缺点,所处环境中劣势。这些缺点一定是和你的目标有联系的,而并不是分析自己所有的缺点。他们可能是你的素质方面、知识方面、能力方面、创造力方面、财力方面或是行为习惯方面的不足。当你发现自己不足的时刻,就下决心改正它,这能使你不断进步。

    第五步:提升计划。要明确,要有期限。你可能会需要掌握某些新的技能,提高某些技能,或学习新的知识。

    第六步:寻求帮助。有外力的协助和监督会帮你更有效地完成这一步骤。

    第七步:分析自己的角色。制定一个明确的实施计划:一定要明确根据计划你要做什么。那么现在你已经有了一个初步的职业规划方案。如果你目前已在一个单位工作,对你来说进一步的提升非常重要,你要做的则是进行角色分析。反思一下这个单位对你的要求和期望是什么。做出哪种贡献可以使你在单位中脱颖而出?大部分人在长期的工作中趋于麻木,对自己的角色并不清晰。但是,就像任何产品在市场中要有其特色的定位和卖点一样,你也要做些事情,一些相关的、有意义和影响但又不落俗套的事情,让这个单位知道你的存在,认可你的价值和成绩。成功的人士会不断对照单位的投入来评估自己的产出价值,并保持自己的贡献在单位的要求之上。什么是职业生涯? (我兄弟写的帮助过我)

    职业生涯是一个人一生中所有与职业相联系的行为与活动,以及相关的态度、价值观、愿望等的连续性经历的过程,也是一个人一生中职业、职位的变迁及工作理想的实现过程。

    简单说,职业生涯就是一个人终生的工作经历。一般可以认为,我们的职业生涯开始于任职前的职业学习和培训,终止于退休。我们选择什么职业作为我们的工作,这对于我们每个人的重要性都是不言而喻的。

    首先,我们未来的衣食住用行等各种需要,包括许多年轻人梦想的出国旅游、买楼、买车,几乎都要通过我们的工作来满足;

    同时,现代人大部分时间是在社会组织中度过的。在毕业后到退休前的几十年中,我们几乎每天都要和我们的工作打交道,因此,我们从事的工作,我们自己是否喜欢,是否适合,是否觉得这份工作很有意义,对我们同样非常重要。一位总裁曾经说过:“在我看来,世界上最大的悲剧莫过于,有太多年轻人从来没有发现自己真正想做什么。想想看,一个人在工作中只能赚到薪水,其他的一无所获,这是一件多么可悲的事情啊!”

    所以,我们在选择职业的时候,应该慎重的对待。中国的古话“男怕入错行,女怕嫁错郎”,在一定程度上反映了职业对于我们每个人的重要性。

    为什么要对我们的职业生涯进行规划?在这里首先和大家分享一个小故事,希望对大家认识“职业生涯规划”的重要性有所启发:蚯蚓的目标阶梯

    蚯蚓是我从小到大的朋友。蚯蚓不是原名,由于他长得黑矮瘦弱,因而得名。

    18岁分开后,我在外为生活四处漂泊奔波;蚯蚓却上了大学,什么事都挺顺当。在这分开的十年里,我们几乎每隔两三年见一次面。每一次我都喜欢问他同一个问题:你将来的目标是什么?

    得到的答案总是不相同。下面记录的是蚯蚓每次谈及目标的原话:18岁,高中毕业典礼上:我发誓要当李嘉诚第二!我要当中国首富(好大的口气)!

    20岁,春节老同学团聚会上:我想创立自己的公司,30岁时拥有资产2000万。

    23岁,在某工厂当技术员,第二职业是炒股:我正在为离开这家工厂而奋斗,因为在这里工作太没前途了。我将全力炒股,三年内用5万炒到300万元(似乎有点实现的可能)。

    25岁,炒股失意而情场得意,开始准备结婚:我希望一年后能有10万元,让我风风光光地结婚(挺现实的想法)。

    26岁,不太风光的结婚典礼上:我想生一个胖小子,不久的将来当个车间主任就行,别的不想了(是不是结婚就会使人成熟)。

    28岁,所在的工厂效益下滑,偏偏正是妻子怀胎十月的时候:我希望这次下岗名单里千万不要有我的名字(这时候我还能说什么)。

    从上面的小故事可以看出,蚯蚓显然没有对自己的人生进行合理的规划,刚开始的时候当技术员,但他没有去细心研究技术,而是去炒股,想赚到300万,后来炒股失败忽而又想当车间主任,最后可能技术也不是很精通,担心下岗名单中不要有他的名字。他这样一个没有规划的人生,显然是很容易失败的。

    实际上我们要想在未来职业生涯中获得成功,首先应该确定一个切合实际的职业定位和职业目标,并且把目标进行分解,然后设计出合理的职业生涯规划图,并且付诸行动,经过不断努力和调整,直到最后实现我们的职业发展目标,获得人生的最大成功。

    我们要想我们的职业生涯能获得很大成功,首先我们应该明白成功的一般规律。美国的成功学大师安东尼·罗宾斯曾经提出过一个成功的万能公式:成功=明确目标+详细计划+马上行动+检查修正+坚持到底。从这个公式我们可以看出,我们要想成功,一般我们要首先明白我们的目标和详细的计划。我们在职业生涯领域也是同样。我们首先选择一个最适合我们发展的行业和工作,然后确定我们的目标,同时对我们的整个职业生涯进行初步规划,最后付诸行动,并且经常的对自己的目标和计划进行检查修正,最后坚持到底,定能获得职业生涯的成功。

    职业生涯规划对我们获得职业成功的重要意义

    职业生涯规划是针对决定个人职业选择的主观和客观因素进行分析和测定,确定个人的奋斗目标和职业目标,并对自己的职业生涯进行合理规划的过程。

    职业生涯规划要求你根据自身的“职业兴趣、性格特点,能力倾向,以及自身所学的专业知识技能等”自身因素,同时考虑到各种外界因素,经过综合权衡考虑,来把自己定位在一个最能发挥自己长处的位置,以便最大限度地实现自我价值。一个职业目标与生活目标相一致的人是幸福的,职业生涯规划实质上是追求最佳职业生涯的过程。

    哈佛大学的爱德华·班菲德博士对美国社会进步动力的研究发现,那些成功的人往往都是有长期时间观念的人。他们在做每天、每周、每月活动规划时,都会用长期的观点去考量。他们会规划五年、十年,甚至二十年的未来计划。他们分配资源或做决策都是基于他们预期自己在几年后的地位而定。这一研究成果,对于刚刚跨入社会的职场人士有着重要的启示作用。例如我们共同分析一个案例:

    在沈阳市的一次大型招聘会上,毕业于某名牌高校的小何向浙江一家汽车公司申请一个机械工程师的岗位。他学的是机械专业,在大学期间各门功课都优秀,毕业后的五六年时间里,从事过医药、空调、摩托车等产品的销售、品质主管,换了六七个工作,但是没有机械方面的工作经历。招聘者看了他的情况后认为,如果他毕业后稳定从事过机械方面工作,则正是公司需要的人选,但是因为没有这方面的工作经验,公司却无法录用他。

    小何的例子表明了很多大学生盲目就业,给自己所带来的危害。由于没有长远打算,很多大学生年轻时只是随波逐流地换工作,到了30多岁还没有职业定位。这种情况之下,继续下去出路不大,重新定位又要费很大力气,不得不陷入一种尴尬的境地。

    持久性改变是人生力量的积累,这需要一种"长期的时间观念"。以销售为例,你销售生涯的涵义是,一般情况下,你必须愿意投人三五年以上的时间,才能蜕变成一个真正的销售精英。这种长期的承诺将完全改变你对训练、日常工作、客户、自己、社区,以及其他工作的态度。日本寿险的推销之神原一平,刚开始做业务的时候,前七个月也没有推销出一张保单,而不得不每天饿肚子,晚上在公园里面睡长椅。

    优秀的人对于他们自己以及生活,一般都会有长远规划。对职业生涯的长期眼光,是我们未来的事业能够登峰造极的重要条件。

    成功是要付出代价的。你必须先辛勤工作好几年,才能达到你赚钱能力的极限,并让你享受渴望的生活方式。一定要先付出代价,持续不断努力好几年以后,才能达成真正有价值的目标。不管想在哪一行出人头地,你起码要投入五年的时间来做准备。不管做的是哪一行,你若想出类拔萃,就一定要有全身心投入至少三五年的心理准备。你要花很长的时间才能培养出足够的专业能力,在竞争激烈的市场中走向成功。否则,如果我们经常的更换城市,更换我们从事的行业和从事的具体工作,那么随着我们变换工作,我们平时积累的相关的知识、技能、工作经验和圈内的人际关系,到时可能都将用不上,最终可能会像我们上面提到的那位小何一样,毕业许多年了,还没有真正的找到适合自己的职业,也没有真正建立起自己独特竞争优势,而陷入一种在现有工作上继续下去出路不大,重新定位又要费很大力气的尴尬。

    成功的职业生涯,从制定合适的目标开始引言:目标就是力量,奋斗才会成功

    研究一些成功者的成功轨迹,就会发现他们走向成功之前大都有着自己的明确目标。美国成功学家拿破仑·希尔在《一年致富》中有这样一句名言:一切成就的起点是渴望。一个人追求的目标愈高,他的才能发展就愈快。一心向着自己目标前进的人,整个世界都给他让路。希尔认为,所有成功,都必须先确立一个明确的目标,当对目标的追求变成一种执著时,你就会发现所有的行动都会带领你朝着这个目标迈进。目标就是力量,奋斗才会成功。古今中外凡在智能上有所发展、事业上有所成就的人,无不有着明确而坚定的目标。英国前首相本杰明·迪斯累里原本是一名并不成功的作家,出版数部作品却无一能给人留下深刻印象。后来迪斯累里涉足政坛,决心成为英国首相。他克服重重阻力,先后当选议员、下议院主席、高等法院首席法官,直至1868年实现既定目标成为英国首相。对于自己的成功,在一次简短的演说中迪斯累里一言以蔽之:“成功的秘诀在于坚持目标。”明确而坚定的目标是赢得成功、有所作为的基本前提,因为坚定目标的意义,不仅在于面对种种挫折与困难时能百折不挠,抓住成功的契机,让梦想一步步变为现实,更重要的还在于身处逆境能产生巨大的奋进激情,使自己的潜能得到最大发掘与释放。

    故事一:目标对人生影响的跟踪调查哈佛大学有一个非常著名的关于目标对人生影响的跟踪调查。调查的对象是一群智力、学历、环境等条件都差不多的大学毕业生。结果是这样的:

    27%的人,没有目标;60%的人,目标模糊;10%的人,有清晰但比较短期的目标;3%的人,有清晰而长远的目标。以后的25年,他们开始了自己的职业生涯。

    25年后,哈佛再次对这群学生进行了跟踪调查。结果是这样的:3%的人,25年间他们朝着一个方向不懈努力,几乎都成为社会各界的成功人士,其中不乏行业领袖、社会精英;

    10%的人,他们的短期目标不断的实现,成为各个领域中的专业人士,大都生活在社会的中上层;

    60%的人,他们安稳的生活与工作,但都没有什么特别的成绩,几乎都生活在社会的中下层;

    剩下27%的人,他们的生活没有目标,过得很不如意,并且常常抱怨他人,抱怨社会、抱怨这个“不肯给他们机会”的世界。

    其实,他们之间的差别仅仅在于:25年前,他们中的一些人知道自己到底要什么,而另一些人则不清楚或不很清楚。故事二:新生活是从选定方向开始的

    还有一个故事,同样说明了清晰的目标和方向,对我们人生成功的重要意义:

    比塞尔是西撒哈拉沙漠中的一个小村庄,它靠在一块1.5平方公里的绿洲旁,可是在肯·莱文 1926年发现它之前,这儿的人没有一个走出过大沙漠。肯·莱文作为英国皇家学院的院士,当然不相信这种说法。他用手语向这儿的人问其原因,结果每个人的回答都是一样:从这儿无论向哪个方向走,最后都还是要转到这个地方来。为了证实这种说法的真伪,他做了一次实验,从比塞尔向北走,结果三天半就走了出来。

    比塞尔人为什么走不出来呢?肯·莱文非常纳闷,最后他只得雇一个比塞尔人,让他带路,看看到底如何?他们带了半个月的水,牵上两匹骆驼,肯.莱文收起指南针等现代化设备,只拄一根木棍在后面。 10天过去了,他们走了数百英里的路程,第11天的早晨,一块绿洲出现在眼前。他们果然又回到了比塞尔。这一次肯·莱文终于明白了,比塞尔人之所以走不出沙漠,是因为他们根本没有认识北斗星。

    在一望无际的沙漠里,一个人如果凭着感觉往前走,他会走出许许多多、大小不一的圆圈,最后的足迹十有八九是一把卷尺的形状。比塞尔村处在浩瀚的沙漠中间,方圆上千公里没有一点参照物,若没有认识北斗星又没有指南针,想走出沙漠,确实是不可能的。

    肯·莱文在离开比塞尔时,带了一位叫阿古特尔的青年,这个青年就是上次和他合作的人,他告诉这位小伙子,只要白天休息,夜晚朝北面那颗最亮的星走,就能走出沙漠。阿古特尔跟着肯·莱文,3天之后果然来到了大漠的边缘。

    现在比塞尔已是西撒哈拉沙漠中一颗明珠,每年有数以万计的旅游者来到这儿,阿古特尔作为比塞尔的开拓者,他的铜像被竖在小城中央。铜像的底座上刻着一行字:新生活是从选定方向开始的。

    从以上两个调查,我们可以看出--成功,需要明确的目标和方向。故事三:如果没有目标,人生将会怎样?

    我们的人生如果没有目标的话,会出现怎样的情况呢?有一个真实的例子,说明一个人若看不到自己的目标,就会有怎样的结果:

    1952年7月4日清晨,加利福尼亚海岸笼罩在浓雾中。在海岩以西21英里的卡塔林纳岛上,一个34岁的女人涉水进入太平洋中,开始向加州海岸游去。要是成功了,她就是第一个游过这个海峡的妇女。这名妇女叫费罗伦丝·棵德威克。在此之前,她是从英法两边海岸游过英吉利海峡的第一个妇女。

    那天早晨,海水冻得她身体发麻,雾很大,她连护送她的船都几乎看不到。时间一个钟头一个钟头过去,千千万万人在电视上注视着她。有几次,鲨鱼靠近了她,被人开枪吓跑了。她仍然在游。在以往这类渡海游泳中她的最大问题不是疲劳,而是刺骨的水温。

    15个钟头之后,她被冰冷的海水冻得浑身发麻。她知道自己不能再游了,就叫人拉她上船。她的母亲和教练在另一条船上。他们告诉她海岸很近了,叫她不要放弃。但她朝加州海岸望去,除了浓雾什么也看不到。几十分钟之后--从她出发算起15个钟头零55分钟之后--人们把她们上了船。又过了几个钟头,她渐渐觉得暖和多了,这时却开始感到失败的打击。她不加思索地对记者说:“说实在的,我不是为自己找借口。如果当时我看见陆南,也许我能坚持下来。” 人们拉她上船的地点,离加州海岸只有半英里!

    后来她说,真正令他半途而费的不是疲劳,也不是寒冷,而是因为好在浓雾中看不到目标。查德威克小姐一生中就只有这一次没有坚持到底。2个月之后,她成功地游过了同一个海峡。她不但是第一位游过卡塔林纳海峡的女性,而且比男子的纪录还快了大约两个钟头。

    查德威克虽然是个游泳好手,但也需要看见目标,才能鼓足干劲完成她有能力完成的任务。因此,当我们规划自己的成功时,千万别低估了制定可测目标的重要性。

    有无目标是成功者与平庸者的分水岭

    用简单的数学知识来说,两点之间,直线最短。假设以相同的速度行进,如果一个人看到明确的目标,他就会和第二个故事中的肯·文莱一样,努力以直线前进,而很快的到达他的目的地;而如果一个人没有看到目标,他就会像在浩瀚沙漠中完全凭着感觉在摸索的比塞尔人一样,漫无目的,曲折前行,而且最终可能发现,自己又回到了起点,或经过多年的辛勤努力后,却两手空空,一无所获。一个人无论他多大年龄,他真正的人生之旅,是从设定目标那一天开始的,以前的日子,只不过是在绕圈子而已。

    目标,象分水岭一样,轻而易举地把资质相似的人们分成为少数的精英和多数的平庸之辈。前者主宰了自己的命运,后者随波逐流,枉度一生。当一个人下定决心之后,往往没什么能阻止他达到目标。一旦有了成功的渴求,就会产生强烈的使命感与责任感并为之拼搏。西方有句谚语:你想要的尽管拿去,只要付出相应的代价就行。有位哲人说:“决心攀登高峰的人,总能找到道路。”强烈的动机可以驱使人超越诸多困境,无需扬鞭自奋蹄。如果你至今仍不清楚自己希望达到怎样的人生高度,那么请把你的目标写下来,矢志不渝地向着心中的目标拼搏进取,如此,你就会敏锐地捕捉到成功的契机,顺利抵达理想的境地。

    只有我们给自己的人生设定了目标,我们内心深处那个勇敢、坚定、执着、不畏艰险的我才会走出来,我们才能最大程度地激发自己的潜能,更好的迎接人生路上的各种挑战。美国歌星玛利亚·凯莉有一首成名代表作《英雄》,歌词写的非常好:

    在你的内心深处,有一个英雄,你不必害怕自己是什么样的一个人。如果探索灵魂深处,你会发现答案,而所谓的痛苦便会消融,随后,英雄带着无穷的力量向你走来,让你抛开恐惧,确信困难终将被战胜,发掘自我,变得坚强,你会发现,英雄就在你心中。

    所以,我们要敢于梦想,敢于制定富有挑战性的目标,这样,我们的潜能才能最大程度的激发出来,才更加容易在未来的职场上获得成功。无论如何,我们不能没有目标

    当然你会说,尽管人们常说“有志者事竟成”,“天下无难事,只怕有心人”,可是现实情况却往往并非如此。的确,“想干什么”与“能干什么”不是一回事,每个人的能力、天赋和悟性都有所不同,我们确立了一个目标,也未必一定就能够百分百达到,但是,如果我们没有一个目标,我们更加不容易获得成功。因为国外有句谚语说的好:如果连你自己也不知道你要到哪里,往往你哪里

    也到不了。中国也有句古语:欲得其中,必求其上;欲得其上,必求上上。所以,不管我们制定的目标是否一定能够达到,目标对我们的成功都有着重要的积极意义。

    当然,除了我们自身的条件外,影响成功还有许多内部外界的因素,所以我们确定一个合理的目标也非常重要的。当长期从事一件事情,却看不到一点进步、一点成功的希望,那也许就该是我们反思的时刻。结合我们的兴趣、爱好、天赋、特长、能力、条件,看看我们是否走错了路。如果走错了路,不要紧,那就慎重地寻找另外一条。

    无论如何,我们不能没有目标,因为尽管我们最初确立的目标有误,在重新调整之后,我们仍有成功的希望,只不过是迟了一点。但是,如果你我根本就一直没有目标,那么我们未来成功的希望,就只能用“渺茫”二字来形容了。

    毕业生确定职业定位时应考虑的几个因素

    经过多年学习,广大应届毕业生终于要走向工作岗位了。而许多学生在毕业找工作的时候,常常面临的一个问题就是:自己上大一的时候,没有能够学习自己喜欢的专业,或经过几年的专业课学习后,发现自己当初选择的专业并不适合自己,现在马上面临毕业找工作,自己不知道是该优先考虑专业对口的工作,还是重新选择一次,选择一个适合自己的工作?

    另外还有许多学生毕业找工作的时候,经常出现的情况是:找工作时只考虑工作与专业对不对口,至于自己所学的专业和要从事的工作是否到底适合自己,从来就不曾考虑;或者是不分企业不分行业不分工作,盲目发送求职简历;或者是在求职简历的求职意向一栏,写着技术、销售、部门经理等许多只为,而对自己没有一个明确的定位;也有的同学在就业压力下,只要碰到一个单位想录用自己,则不管该行业和该工作是不是适合自己,赶紧签了就业协议书,而且可能一下就签了三五年。

    当然,许多时候,迫于就业压力,以上的种种做法也可以理解。但同时我们应看到,以上种种做法都带有一定的盲目性,没有很全面并且站在一个长远角度来考虑我们的就业问题。如果我们在找工作之前没有经过详细分析就盲目地进行了选择,那么三五年之后,我们很可能发现我们仍然面临着选择的困境:那就是继续做现在的工作,自己觉得该工作不太适合自己,甚至感觉工作的每一天都很沉闷或痛苦,工作了几年也没做出太大的成绩;如果辞职重新选择别的行业或职业,那么很可能意味着放弃现在积累的一些专业知识、行业背景和人际关系,不得不付出极高的“机会成本”。

    而实际上,我们在择业时比较科学理性的做法是:在开始找工作以前,应该首先对外界和自身的情况都进行一下全面了解和详细分析,进而初步确定自己的一个职业定位和发展方向,然后在找工作的过程中有意识的去寻找。

    从外界的角度讲,主要是当前的整体就业环境和就业趋势,各行各业的现状及发展前景,自己面临的一些就业机会,以及自己的家庭环境等因素;

    而从自身的角度讲,了解和分析的主要因素应该包括:1 、我喜欢做什么(主要包括职业兴趣、职业价值观等);

    2 、我适合做什么(主要包括职业性格、气质、天赋才干、智商情商等);3 、我擅长做什么(主要包括职业能力倾向,比如言语表达、逻辑推理、数字运算等);

    4 、我能够做什么(主要包括自己掌握的的专业知识、技能、和工作经验等);

    最后经过对以上因素的综合分析和权衡,来初步确定我们的职业定位和发展方向,并在就业过程中,按照自己的职业规划有意识的去寻找。当然,对以上因素进行“分析和权衡”的基础,是我们对自己的职业兴趣、职业性格和能力倾向等都比较熟悉和了解。如果连我们自己也不是很清楚自己真正喜欢或适合做的工作,那么我们可以借助“职业测评”这个工具手段,来进一步发现和了解自己的职业兴趣、能力倾向等职业特征和发展潜能,。

    同时,以上要素只是我们在进行职业选择时应该重点考虑的几个方面,不能说哪个重要哪个不重要,每个人的情况都有所不同,每个人还要结合自己的实际情况具体考虑。同时需要说明的是,我们在就业时有意识地去寻找最适合自己的工作,并不是说不适合自己的工作就一定不能去做了,“先就业、再择业”、“先求生存、后图发展”的就业思想,在未来很长一段时间内,对大多数应届毕业生找工作都将具有战略指导意义,只是我们在择业过程中,如果在保证就业的大前提下,能够更加的科学理性一些,无疑会更加有利于我们未来的成功。

    职业规划举例:规划路线图和分段实现大目标

    综合前面几节的知识,我们已经明白了职业规划和确定职业目标对我们人生的意义,以及确定职业目标和职业定位应该考虑的几个因素。那么,当我们初步确定了自己的职业目标和职业定位之后,我们下一步就应该围绕着我们的职业目标和职业定位,设计合理的“职业发展线路图”,最终实现我们的职业目标。

    在这里,首先和大家分享一个小故事:分段实现大目标

    1984年,在东京国际马拉松邀请赛中,名不见经传的日本选手山田本一出人意外地夺得了世界冠军。当记者问他凭什么取得如此惊人的成绩时,他说了这么一句话:凭智慧战胜对手。

    当时许多人都认为这个偶然跑到前面的矮个子选手是在故弄玄虚。马拉松赛是体力和耐力的运动,只要身体素质好又有耐性就有望夺冠,爆发力和速度都还在其次,说用智慧取胜确实有点勉强。

    两年后,意大利国际马拉松邀请赛在意大利北部城市米兰举行,山田本一代表日本参加比赛。这一次,他又获得了世界冠军。记者又请他谈经验。

    山田本一性情木讷,不善言谈,回答的仍是上次那句话:用智慧战胜对手。这回记者在报纸上没再挖苦他,但对他所谓的智慧迷惑不解。 10年后,这个谜终于被解开了,他在他的自传中是这么说的:每次比赛之前,我都要乘车把比赛的线路仔细地看一遍,并把沿途比较醒目的标志画下来,比如第一个标志是银行;第二个标志是一棵大树;第三个标志是一座红房子……这样一直画到赛程的终点。比赛开始后,我就以百米的速度奋力地向第一个目标冲去,等到达第一个目标后,我又以同样的速度向第二个目标冲去。40多公里的赛程,就被我分解成这么几个小目标轻松地跑完了。起初,我并不懂这样的道理,我把我的目标定在40多公里外终点线上的那面旗帜上,结果我跑到十几公里时就疲惫不堪了,我被前面那段遥远的路程给吓倒了。

    同样,在现实中,我们做事之所以会半途而废,这其中的原因,往往不是因为目标难度较大,而是觉得成功离我们较远。所以,我们制定目标的时候,应该把我们的职业生涯的最终目标,分解成一个个的阶段性的目标,这样的话,只要我们坚持下去,我们的职业生涯的总目标也一定能够最终实现。

    职业规划图下面大家可以看一个具体的案例:假设毕业生小张学的是市场营销,同时他比较喜欢做销售,那么他的中短期的职业生涯可以这样来规划:职业生涯规划图

    职业目标: 在 2010 年的时候,成为一家中小型企业的市场部经理开始时间 终止时间 职业 所需掌握的知识 所需掌握的技能能力和经验的积累

    12005年7月 2008年6月 销售代表 销售知识产品知识 销售技巧如何谈客户

    22008年7月 2010年6月 所在公司的销售主管 领导下属的艺术 如何激励下属团队领导能力

    32010年7月 2012年6月 所在公司区域销售经理 市场营销方面的知识如何制定市场营销目标计划 如何把一个地区的业务迅速做大

    把你的理想分成工作、家庭与社交三类。回答下面问题找到自己的答案。你想完成哪些事?想要成为什么样的人?哪些东西才能让你满足?请回答1、10年后的工作

    你希望达到哪一种入收水平?你希望寻求哪一种程度的责任?你希望拥有多大的权力?你希望从工作中获得多大的威望?2、10年后的家庭:你希望你的家庭达到哪一种生活水准?

    你希望住上哪一类房子?你喜欢哪一种旅游活动?你喜欢如何抚养你的小孩?3、10年后的社交:你希望拥有哪种朋友?你希望参加哪种社团?你希望获得哪些社团的领导职位?

    你希望参加哪些社会活动?制定人生目标必须注意:一、你的目标必须是长期的。

    没有长期的目标,你也许就会被短期的种种挫折所击倒。设定了长期的目标后,起初不要试图去克服所有的阻碍。就像你早上离家不可能等路口所有的交通灯都是绿色你才出门,你是一个一个地通过红绿灯,你不但能走到你目力所及的地方,而且当你到达那里时,你经常能见到更远的地方。

    二、你的目标必须是特定的。一个猎人,当他面对树上的一群鸟时,如果说他能打下几只鸟的话,那么他肯定不是向这群鸟射击,几只鸟的收获一定是猎人瞄准特定目标的结果。

    三、你的目标一定要远大。

    一旦你确定只走1公里路的目标,在完成还不到1公里时,你便有可能感觉到累而松懈自己,因为反正快到目标了。然而,如果你的目标是要走10公里路,你便会作好思想及其他一切必要的准备,并调动各方面的潜在力量,一鼓作气走完7、8公里后,才可能会稍微松懈一下自己。

    四、你必须实践自己的目标。

    五、你的人生大目标并不一定要详细精确。只要有个较明确的方向和大致程度要求就可以,例如立志做个卓越的科学家、立志做个大企业家或是立志做个改变世界的政治家等等。

    制定目标基本原则:一、你必须确定你的目标和起跑线。要走出迷宫除了地图和指南针外,你还要知道知自己所处的位置。

    当你一个人最终坐下来后,你就可以向自己提以下的问题,并把答案写下来:1我拥有怎样的才干和天赋?(1)什么工作我能干得最好?(2)我能比我认识的人都干得好吗?……

    2我的激情是什么?(1)有什么东西特别使我内心激动,使我分外有冲劲去完成?(2)假若有,这种冲动的激情是什么?……3我的经历有什么与众不同的地方?

    (1)我都干过哪些和别人不一样的事?(2)我的与众不同能赋予我特别的洞察力、经验和能力吗?(3)我能作出什么不寻常的事情?……4我所处的时代和环境有什么特点?

    理想往往来自人生的独特环境、地理与政治气候,历史、经济、文化背景以及许多其他因素都可能起作用。记下所有可能对你的机遇产生影响的东西。5我与什么卓越人物有来往?

    你可以与之合作的那些人的才干、天赋与激情一定会带给你靠单独工作找不到的机遇。6我期望何种需要得到满足?要知道,满足某种需要的欲望往往能激发人的理想。

    7在我的一生中,我可以想像的并且自己能作出的最伟大的事情是什么?……上面的过程一旦可能,你最好每年都做一次。如果有必要,做完了后你也可以重做一次。

    隔了几年后,你可能发现自己的理想已经改变了。如果几年来你抱着同一个理想,而且你觉得这个理想远超过自己的能力,那么你很可能已确定了人生的一个很好的理想了。在未来的岁月中,你也许发现,这个理想会有小小的修正或补充,但不会完全改变。

    其次留出几个小时的时间,用来回顾你最近所干过的事(比如生意上的)。你这样做的目的是发现你以前从未思考过的新打算。这样做的时候,其指导原则与上面第一项活动相同:

    找个安静的地方,带上所需的用品。然后,向自己提出下面这些问题,并尽可能写出答案:1我有什么才干、天赋或财力目前为止还未派上用场?

    2我所处的特殊环境和时代对我的工作或事业可能产生什么影响?3对上一个问题,我的答案能带来什么机遇?

    4假若我有无限的财力,而且我确信我的努力都能成功,那么我的生意上的目标是什么?(记住,一定要有远大的目标!)

    5我的熟人中有谁的目标和我的目标近似?我和他们是否可以互相提携?

    二、你必须把目标清楚地表述出来。切记,你在表述你的人生目标时,一定要以你的梦想和个人的信念作为基础。三、把整体的目标分解成一个个易记的目标单元。

    表达目标的方式多种多样。目标可以用业绩表示(如推销1000件某种产品),也可以用时间表示(如每周3次,每次锻炼1个小时)。目标可以涉及人生的领域,视你想取得什么成就而定。拿破仑·希尔列举了一些可能的目标领域。

    个人发展;身体健康;专业成就;人际关系;家庭责任;财务安排。……

    想到什么目标不妨先写下来。起初,你没必要判断这些目标是不是能够实现,也不要管它们是长期的还是短期的。这个阶段重要的是有创意,有梦想。把能想到的都写下来后,再对照你的人生目标仔细地检查一下。其后,不妨问自己两个问题:

    其一目标是否使自己向确定的理想迈进了一步?如果你发现这些目标之中有什么与你的人生目标和你的理想不符合,一般来说你可以有两种选择:1、把它去掉、忘掉;

    2、重新评估你的人生目标,考虑改写。二者必居其一。其二你已经记下了为实现理想必须达到的2个至5个目标了吗?

    这个问题能帮助你弄清楚你所定下的目标是不是齐全了。如果发现你的理想要求你达到另外几个目标,就把这几个也写下来。当你把目标都记下来后,你就可以着手制定走向成功的战略了。

    四、你的短期目标不但要有激励价值,而且要现实可行。五、你的中短期目标应尽可能具体明确,并有具体的时间限制。六、你必须行动起来。否则一切都成为空想。

    七、你应该定期评估计划的执行情况。

    定期评测进展,这和你的行动同样重要。随着计划的进展,你有时会发现你的短期目标并没有使你向长期目标靠拢;也许,你可能发现你当初的目标不怎么现实;又也许你会觉得你的中长期目标中有一个并不符合你的理想及人生的最终目标。不管是怎样的情况,你都需要作出调整。你可以把下面这句话贴在最能引起你注意的地方:

    “我现在做的事情会使我更接近我的目标吗?”八、你应该庆贺自己已取得的成就当一切都已经成为现实之后,一定要记住抽点时间庆祝已取得的成就。

    拿破仑·希尔成功学历来相信奖励制度。你取得预期的成果后,你自然应该奖励自己,善待自己。小成果小奖,大成果大奖。但是绝不能在完成任务之前提前消费,奖励自己。

    最好,当你取得一项重大成就时,一定要把对自己成功的庆贺办得终身难忘。如何定制你自己的价值连城的个人成功计划

    拿破仑·希尔的成功学为你提供了一个“价值连城的个人成功计划”方案,在此我们不妨提供给你,供你研习参照。第一、你应该使自己的想学明确可见。

    明确你自己想达到什么具体目标,把它清楚的描述出来并写下来,然后专心一致地实现它。第二、制定实现目标的计划,并定出最后限期。

    你应该为你的计划制定出详细的实施步骤和详尽的时间表,规划出不同时期的进度,例如每小时的、每日的、每月的。千万别忘记,有组织的工作和持续的热情是力量的源泉。

    第三,对于希望要取得的人生企求,你应该保持真诚的态度。

    积极的心态(PMA心态)是人类一切活动的原动力。成功的欲望会给你植入“成功意识”,成功意识又反过来培养出越来越强的成功习惯。

    第四,你应该无限信任自己和自己的能力。你无论做什么事,内心要有绝对成功的信心。你应该随时想着自己的长处而不是短处,想着自己的能力而不是困难。

    第五,你应该要有把计划进行到底的坚强决心。坚定的决心是任何别的东西都无法代替的。以下是制定个人成功计划的具体步骤:1把你在确定自己人生理想时写下的东西多看几遍。

    温习是一次再思索。你可以以你已经写下的人生理想为基础,写出一份陈述。陈述要写得简单,但要包括你想做的一切。陈述应该包括:(1)我人生活动的重点是什么?

    (2)我想做这些事情的原因是什么?(3)我打算如何做到这些事情?在这里我们提供了几个可能的答案兹录于后,仅供你参考:

    我打算以行医来服务公众,目的是尽最大努力地帮助一些不幸的人改善他们的生活;我期望通过爱护、教导和培养别人来帮助他们找到自己的人生目的,作出他们的贡献;

    我期望通过向顾客提供最好的产品和服务,以达到生意成功,收入不菲。这样,我能够用赚得的钱来照顾家人及其他人;我希望投身于国家的武装力量,保家卫国;……

    写好了目标陈述后,你最好在最初几周每天看一次,看看这份陈述是否准确代表你的人生目标。2花几个小时来检查一下自己,看自己是不是能走出已确定的远大目标。

    你能够以从人生的总体目标开始,找到实现人生总体目标所必须达到的那些主要目标。你也许会想出数百个主要目标。

    但是你一定要花一些时间仔细检视这些人生主要目标,看看你是否真的觉得它们很重要。3你也可以花1个小时的时间把每一个人生的具体目标仔细地阅读一遍。

    阅读的时候,你也可以把一个具体的人生目标分解成几个必须达到的中长期目标,甚至将其分解成每周、每月可以执行的任务。这些活动将帮助你描绘成功的蓝图。

    4这样处理过每个人生目标之后,你就会懂得要成功就必须做什么。把每天、每周、每月的活动组织一下。5评估你的目标。

    确定你的目标是否现实。弄清哪几个目标是需要你与别人合作才能达到的。记下需要别人帮助的目标,以及可以给你提供帮助的人。如何实现你的目标在实现你的目标前再次确认:

    一、你的目标是否已经很确定、是否量化,例如一年后我要拥有100万。二、你是否坚强的决心,相信你自己可以创造奇迹。宜且要时时记住,“这件事对我的目标是否有帮助”。

    倘若答案是否定的,你自己不必去做;如果是肯定的,就要加紧推进。我们没法一下子成功,只能一步步走向成功。所谓优良的计划,就是自行确定的每个月的配额或清单。

    想想看,你该如何才能提高自己的效率。现在开始“30天改善计划”

    你可以在你计划的标题下填入你1个月以内必须做到的事情,1个月以后再检查一下进度,并再次建立新的目标。例如,你可以在你的计划中写上:1改掉这些习惯(举例说明)

    (1)不按时完成各种事情。(2)消极性的话语。(3)每天看电视超过60分钟。(4)无意义的闲聊。2养成这些习惯(举例说明)

    (1)每天早上出门前检查一下自己的仪表。(2)每一天的工作都在前一天晚上就计划好。(3)任何场合尽量赞美别人。3用这些方法来增加工作效率

    (1)尽量发掘下属的工作潜力。(2)进一步学习公司的业务。(例如,尽量弄清公司的业务有哪些?顾客又是哪些人?)(3)提出三项改善公司业务的建议。

    4用这些方法来增加家庭的和谐(1)对太太(丈夫)为你做的小事表示更大的谢意,不可像往常一样认为理所当然。(2)每周一次带家人做些特别的活动。

    (3)每天固定安排1小时和家人相处在一起。5用下面的方法来培养个性(1)每周花两个小时阅读自己本专业的杂志。(2)阅读1本励志书籍。(3)结交4个新朋友。

    (4)每天静静思考30分钟。目标实现法一个人设定目标时,最重要的并非“如何”实现这个目标,而是“为何”要设定些目标,“为何”比“如何”更重要。

    步骤一:列下实现目标理由成功者在设定目标的同时,也会找出设这些目标理由来说服自己。当他十分清楚地知道实现目标的好处以及不实现目标坏处时便会马上设下时限来

    规范自己。步骤二:设下时限一般人如果没有时限来集中注意力的话,很难检查出自己在不同时间段到底做到什么程度了。因此,当明确知道目标之后,便要设下明确的实行时限。

    步骤三:列下实现目标所需的条件。若不知实现该目标所需的条件时,如何去进行则会模糊。比如你想进哈佛大学就读,却不知哈佛的录取标准,则进入哈佛必定有所困难,如果明确

    知道它的录取标准,则更能按部就班地达到它所要求的标准。步骤四:自问“假如要实现目标话,我自己必须变成什么样的人?”并在纸上列下来

    很多人想成功,却不清楚成功者所具备的条件。我通常列出成功者所需具备的26项条件,让自己知道该往哪个方面迈进,成为怎样的人。

    例如,你的目标三年内当经理,接下来便把当经理的条件和能力列出来,明确告诉自己就是要成为那样的人。步骤五:列下目前不能实现目标的所有原因,从难到易排列其困难度,

    自问“现在马上用什么办法来解决那些问题”,并逐项写下。列完解答之后,这些解答通常就是立即可以采取的行动,并且十分明确。

    步骤六:下定承诺,直到实现目标为止,否则绝不放弃。许多人只是对目标“有兴趣”,但并未决定一定要实现目标,因为当然

    无法实现。“有兴趣”不会让你成功,“决定成功”才能让你成功。步骤七:设下时间表,从实现目标的最终期限倒推至现在

    例如,你决定三年之内当上经理,则列下后两后内要做到的程度,今年内要做到的程度,每个月要做到的程度及每天该做的事。步骤八:马上采取行动,现在开始

    步骤九:衡量每天的进度,每天检查成果若每年检查一次实施成果,则一年只有一次机会可以改正错误,若每月

    检查一次,则有12次机会改正错误,若每天衡量一次,则就有300多次机会,更遑论每天衡量数次进度了,机会当然相对增加。快速实现目标将它具体化

    重点在于把所有目标写在纸上,尽量具体化,例如想买汽车把汽车照片贴在眼睛右上方看得到的部位,每天早晚利用5——10分钟的时间,想象你

    已拥有这部车,并获得拥有该车的所有好处,这会加速你实现愿望的时间。1、请设定个最想要达成的目标,并列出五项实现目标的理由。

    2、请写下若实现目标有哪些好处及不实现目标哪些坏处?3、你现在愿意做哪些事情,使你可以得到所期望的结果。恭喜您,您又进步了一点点!
    展开全文
  • 目标检测与YOLO算法(用Python实现目标检测)

    千次阅读 多人点赞 2020-07-27 23:54:36
    最近在听Andrew Ng讲解目标检测的视频,包括目标定位,特征点检测,卷积的滑动窗口的实现,Bounding Box预测,交并比,非极大值抑制,AnchorBoxes,YOLO算法以及候选区域,并通过查阅相关的资料,对以上内容有了初步...

           最近在听Andrew Ng讲解目标检测的视频,包括目标定位,特征点检测,卷积的滑动窗口的实现,Bounding Box预测,交并比,非极大值抑制,AnchorBoxes,YOLO算法以及候选区域,并通过查阅相关的资料,对以上内容有了初步的理解,趁热打铁,总结如下。

    一、目标定位(Object Localization)

    图片分类:图片分类问题已经不陌生了,例如,输入一张图片到多层卷积神经网络,它会输出一个特征向量,并反馈给softmax单元来预测图片的类型。

    定位分类问题:不仅要用算法判断出图中是否有一辆汽车,而且还要标注汽车的位置,一般用边框(Bounding Box)来标注。通常只有一个较大的对象位于图片的中间位置,我们要对它进识别和定位。

    对象检测问题:图片可以含有多个对象 ,甚至单张图片会有多个不同的分类对象。因此图像分类的思路可以帮助我们学习对象定位,而对象定位的思路又可以帮助我们学习对象检测。 

    目标分类(Object Classification)
    目标定位(Object Localization)
    目标检测(Object Detection)

     

     举个栗子(example):

           如果你正在构建汽车自动驾驶系统,那么对象可以包括以下几类:行人、汽车、摩托车和背景,背景就是图片中没有行人、汽车、摩托车三类对象,输出结果便会是背景对象,这四个对象就是softmax函数可能输出的结果,这就是目标分类的过程。但是如果你还想定位图片中的位置,该怎么做呢?我们可以让神经网络多输出几个单元,输出一个边界框。具体说就是让神经网络再多输出 4 个数字,标记b_{x}b_{y}b_{h}b_{w}这四个数字是被检测对象的边界框的参数化表示。

            

            图片的左上角是(0,0),右下角是(1,1),要确定边界框的具体位置,需要指定红色方框的中心点,这个点表示为 (b_{x} ,b_{y}),边界框的高度为b_{h},宽度为b_{w}。因此训练集不仅包含神经网络要预测的对象分类标签,还要包含表示边界框的这四个数字,接着采用监督学习算法,输出一个分类标签,还有四个参数值,从而给出检测对象的边框位置。此例中, b_{x}的理想值是 0.5,b_{y}大约是 0.7,b_{h}约为 0.3,b_{w}约为 0.4。

    目标标签y的定义如下:

           它是一个向量,第一个组件p_{c}表示是否含有对象,如果对象属于前三类(行人,汽车,摩托车),则 p_{c} = 1,如果是背景,则图片中没有要检测的对象,则p_{c} = 0,我们可以这样理解p_{c},它表示被检测对象属于某一分类的概率,背景分类除外。c_{1}c_{2}c_{3}表示对象属于1-3类的哪一类,是行人,汽车,还是摩托车。神经网络中的损失函数,其参数为类别y和网络输出\hat{y},如果采用平方误差策略,则:损失值等于每个元素相应差值的平方和。当y_{1} = 1时,平方误差策略可以减少这 8 个元素预测值和实际输出结果之间差值的平方。当y_{1}时,y矩阵中的后 7 个元素都不用考虑,只需要考虑神经网络评估y1y1(即pcpc)的准确度。

    实际应用中,你可以对c_{1}c_{2}c_{3}和 softmax 激活函数应用对数损失函数,并输出其中一个元素值,通常做法是对边界框坐标应用平方差或类似方法,对p_{c}应用逻辑回归函数,甚至采用平方预测误差也是可以的。

     二、特征点检测

           上面,我们讲了如何利用神经网络进行对象定位,即通过输出四个参数值b_{x}b_{y}b_{h}b_{w}给出图片中对象的边界框。更概括地说,神经网络可以通过输出图片上特征点的(x,y)坐标来实现对目标特征的识别,我们看几个例子。

            假设你正在构建一个人脸识别应用,出于某种原因,你希望算法可以给出眼角的具体位置。眼角坐标为(x,y),你可以让神经网络的最后一层多输出两个数字l_{x}l_{y},作为眼角的坐标值。如果你想知道两只眼睛的四个眼角的具体位置,那么从左到右,依次用四个特征点来表示这四个眼角。对神经网络稍做些修改,输出第一个特征点(l_{1x},l_{1y})第二个特征点(l_{2x},l_{2y}),依此类推,这四个脸部特征点的位置就可以通过神经网络输出了。 

           也许除了这四个特征点,你还想得到更多的特征点输出值,这些(图中眼眶上的红色特征点)都是眼睛的特征点,你还可以根据嘴部的关键点输出值来确定嘴的形状,从而判断人物是在微笑还是皱眉,也可以提取鼻子周围的关键特征点。为了便于说明,你可以设定特征点的个数,假设脸部有 64 个特征点,有些点甚至可以帮助你定义脸部轮廓或下颌轮廓。选定特征点个数,并生成包含这些特征点的标签训练集,然后利用神经网络输出脸部关键特征点的位置。 

           具体做法是,准备一个卷积网络和一些特征集,将人脸图片输入卷积网络,输出1或0,1表示有人脸,0表示没有人脸,然后输出(l_{1x},l_{1y}) ……直到(l_{64x},l_{64y})。这里我用l代表一个特征,这里有 129个输出单元,其中1表示图片中有人脸,因为有 64个特征,64×2=128,所以最终输出 128+1=129 个单元,由此实现对图片的人脸检测和定位。这只是一个识别脸部表情的基本构造模块,如果你玩过 Snapchat 或其它娱乐类应用,你应该对 AR(增强现实)过滤器多少有些了解, Snapchat 过滤器实现了在脸上画皇冠和其他一些特殊效果。检测脸部特征也是计算机图形效果的一个关键构造模块,比如实现脸部扭曲,头戴皇冠等等。当然为了构建这样的网络,你需要准备一个标签训练集,也就是图片和标签的集合,这些点都是人为辛苦标注的。

            最后一个例子,如果你对人体姿态检测感兴趣,你还可以定义一些关键特征点,如胸部的中点,左肩,左肘,腰等等。然后通过神经网络标注人物姿态的关键特征点,再输出这些标注过的特征点,就相当于输出了人物的姿态动作。当然,要实现这个功能,你需要设定这些关键特征点,从胸部中心点(l_{1x},l_{1y})一直往下,直到(l_{32x},l_{32y})。

    三、目标检测(多个目标)

           学过了对象定位和特征点检测,我们来构建一个对象检测算法。我们将学习如何通过卷积网络进行对象检测,采用的是基于滑动窗口的目标检测算法。

           假如你想构建一个汽车检测算法,步骤是,首先创建一个标签训练集,也就是x和y表示适当剪切的汽车图片样本,这张图片(编号 1)x是一个正样本. ,因为它是一辆汽车图片,这几张图片(编号 2、 3)也有汽车,但这两张(编号 4、 5)没有汽车。出于我们对这个训练集的期望,你一开始可以使用适当剪切的图片,就是整张图片几乎都被汽车占据,你可以照张照片,然后剪切,剪掉汽车以外的部分,使汽车居于中间位置,并基本占据整张图片。有了这个标签训练集,你就可以开始训练卷积网络了,输入这些适当剪切过的图片(编号 6),卷积网络输出y, 0 或 1 表示图片中有汽车或没有汽车。训练完这个卷积网络,就可以用它来实现滑动窗口目标检测,具体步骤如下: 

            假设这是一张测试图片,首先选定一个特定大小的窗口,比如图片下方这个窗口,将这个红色小方块输入卷积神经网络,卷积网络开始进行预测,即判断红色方框内有没有汽车。 

            滑动窗口目标检测算法接下来会继续处理第二个图像,即红色方框稍向右滑动之后的区域,并输入给卷积网络,因此输入给卷积网络的只有红色方框内的区域,再次运行卷积网络,然后处理第三个图像,依次重复操作,直到这个窗口滑过图像的每一个角落,这就是所谓的图像滑动窗口操作。

    注意:滑动窗口目标检测算法也有很明显的缺点,就是计算成本,因为你在图片中剪切出太多小方块,卷积网络要一个个地处理。如果你选用的步幅很大,显然会减少输入卷积网络的窗口个数,但是粗糙间隔尺寸可能会影响性能。反之,如果采用小粒度或小步幅,传递给卷积网络的小窗口会特别多,这意味着超高的计算成本。 

            在上述我们已经说过滑动窗口目标检测算法也有很明显的缺点,如何解决这个算法的缺点呢?在卷积层上应用滑动窗口目标检测算法可以明显的提高这个算法的效率。为了构造滑动窗口的卷积应用,首先要知道如何把神经网络的全连接层转化为卷积层。下图可以直观的解释全连接层向卷积层转化的过程。

            第一部分(上面那部分)是全连接层的过程,第二部分(下面那部分)是全连接层向卷积层的转化 。下面举一个例子,解释一下在卷积层上应用滑动窗口检测的算法过程,如下图所示。

             在上图中假设图像大小为16×16×3,窗口的大小为14×14×3,假设步长为2,那么窗口要经过4次才能遍历整个图像,也就是在卷积层里进行4次运算,这样也会使算法的效率很低。我们的解决办法是,直接将整个图像经过卷积层、池化层这样1次操作,在上图中可以看出,最后输出的2×2×4的结果便是经过4次的结果,例如2×2×4图像的左上角区域,对应着图像的左上角的滑动窗口。

     四、Bounding Box预测

             在上述的在卷积层应用窗口检测算法虽然效率很高,但是其输出的边框的精准度不是很高(如下图展示,不能很精准的输出汽车的边框),如何才能使输出的边框精准度变高呢?用YOLO算法(You Only Look Once)便可解决这个问题。

             YOLO 算法做的就是,将图像分成n×n的网格(下图是分成3×3的网格),取两个对象的中点,然后将这个对象分配给包含对象中点的格子。所以左边的汽车就分配到绿色框标记的格子上,右边的汽车就分配到黄色框标记的格子上。即使中心格子同时有两辆车的一部分,我们就假装中心格子没有任何我们感兴趣的对象。 

    五、交并比

             如评价目标检测算法的好坏呢?这里便可引入交并比。

             在上图中假设红色区域是真实的汽车边框,蓝色区域是应用目标检测算法所检测的边框,那么交并比(LoU)就可以如上图所表示,即黄色区域 /绿色区域 。如果LoU>=0.5就可以认定所检测输出的边框合格,这里的0.5称为阀门(人工定义的),也可以是0.6, 0.7等等。

    六、非极大值抑制

             到目前为止我们学习到的目标检测算法仍然存在一个问题,就是当我们使用目标检测算法时,我们对同一个对象可能检验多次,如同下面这个图所示,同一对象可能检测出多次。

              我们分步介绍一下非极大值抑制是怎么起效的,因为你要在 361 个格子上都运行一次图像检测和定位算法,那么可能很多格子都会举手说我的Pc ,我这个格子里有车的概率很高,而不是 361 个格子中仅有两个格子会报告它们检测出一个对象。所以当你运行算法的时候,最后可能会对同一个对象做出多次检测,所以非极大值抑制做的就是清理这些检测结果。这样一辆车只检测一次,而不是每辆车都触发多次检测。非极大值抑制可以确保我们对一个对象只检验一次,非极大值抑制算法的具体细节如下图所示。

     非极大值抑制算法步骤:

    1、将所有的输出的p_{c}进行排序,选出最高的p_{c}及其对应输出框。

    2、遍历其余的输出框,如果和当前最高p_{c}的输出框的重叠面积(IOU)大于一定阈值,我们就将框删除。

    3、从未处理的输出框中继续选一个最高p_{c}的,重复上述过程。

    七、Anchor Boxes 

              到目前为止我们所熟悉的目标检测算法每个格子只能检测出一个对象,如果想让一个格子检测出多个对象,那么便可引出Anchor Boxes这个概念,举个栗子:

            对于上面那个图像,我们将它分割为3×3,那么可以清楚的看到,人的中点和车的中点落到了同一个格子里,如果按照上述的目标检测算法,便不知道要输出哪个结果,怎么解决这个问题呢?

            此时我们可以预先定义两个不同形状的Anchor Box ,并把预测结果与这两个Anchor Box相关联,此时的y可以定义如下:

     前8个的结果可以与Anchor Box1相关联,后8个的结果可以与Anchor Box2相关联。下图是无Anchor Box和有Anchor Box的对比过程。

    八、YOLO算法 

            由上面所学习到的知识组装起来构成YOLO对象检测算法。

            假设我们要在图片中检测三种目标:行人、汽车和摩托车,同时使用两种不同的Anchor box。

          (1)训练集:

    • 输入X:同样大小的完整图片;
    • 目标Y:使用
    • 对不同格子中的小图,定义目标输出向量Y。

          (2)模型预测:

                   输入与训练集中相同大小的图片,同时得到每个格子中不同的输出结果:

          (3)运行非最大值抑制(NMS):

    • 假设使用了2个Anchor box,那么对于每一个网格,我们都会得到预测输出的2个bounding boxes,其中一个比较高;

      还在路上,稍等...

    • 抛弃概率值低的预测bounding boxes;

      还在路上,稍等...

    • 对每个对象(如行人、汽车、摩托车)分别使用NMS算法得到最终的预测边界框。

      还在路上,稍等...

    九、python实现YOLO目标检测

            我们将在这篇博客使用在COCO数据集上预训练好的YOLOv3模型。COCO 数据集包含80类,有people (人),bicycle(自行车),car(汽车)......,详细类别可查看链接:https://github.com/pjreddie/darknet/blob/master/data/coco.names

    # -*- coding: utf-8 -*-
    # 载入所需库
    import cv2
    import numpy as np
    import os
    import time
    
    
    def yolo_detect(pathIn='',
                    pathOut=None,
                    label_path='./cfg/coco.names',
                    config_path='./cfg/yolov3.cfg',
                    weights_path='./cfg/yolov3.weights',
                    confidence_thre=0.5,
                    nms_thre=0.3,
                    jpg_quality=80):
        '''
        pathIn:原始图片的路径
        pathOut:结果图片的路径
        label_path:类别标签文件的路径
        config_path:模型配置文件的路径
        weights_path:模型权重文件的路径
        confidence_thre:0-1,置信度(概率/打分)阈值,即保留概率大于这个值的边界框,默认为0.5
        nms_thre:非极大值抑制的阈值,默认为0.3
        jpg_quality:设定输出图片的质量,范围为0到100,默认为80,越大质量越好
        '''
    
        # 加载类别标签文件
        LABELS = open(label_path).read().strip().split("\n")
        nclass = len(LABELS)
    
        # 为每个类别的边界框随机匹配相应颜色
        np.random.seed(42)
        COLORS = np.random.randint(0, 255, size=(nclass, 3), dtype='uint8')
    
        # 载入图片并获取其维度
        base_path = os.path.basename(pathIn)
        img = cv2.imread(pathIn)
        (H, W) = img.shape[:2]
    
        # 加载模型配置和权重文件
        print('从硬盘加载YOLO......')
        net = cv2.dnn.readNetFromDarknet(config_path, weights_path)
    
        # 获取YOLO输出层的名字
        ln = net.getLayerNames()
        ln = [ln[i[0] - 1] for i in net.getUnconnectedOutLayers()]
    
        # 将图片构建成一个blob,设置图片尺寸,然后执行一次
        # YOLO前馈网络计算,最终获取边界框和相应概率
        blob = cv2.dnn.blobFromImage(img, 1 / 255.0, (416, 416), swapRB=True, crop=False)
        net.setInput(blob)
        start = time.time()
        layerOutputs = net.forward(ln)
        end = time.time()
    
        # 显示预测所花费时间
        print('YOLO模型花费 {:.2f} 秒来预测一张图片'.format(end - start))
    
        # 初始化边界框,置信度(概率)以及类别
        boxes = []
        confidences = []
        classIDs = []
    
        # 迭代每个输出层,总共三个
        for output in layerOutputs:
            # 迭代每个检测
            for detection in output:
                # 提取类别ID和置信度
                scores = detection[5:]
                classID = np.argmax(scores)
                confidence = scores[classID]
    
                # 只保留置信度大于某值的边界框
                if confidence > confidence_thre:
                    # 将边界框的坐标还原至与原图片相匹配,记住YOLO返回的是
                    # 边界框的中心坐标以及边界框的宽度和高度
                    box = detection[0:4] * np.array([W, H, W, H])
                    (centerX, centerY, width, height) = box.astype("int")
    
                    # 计算边界框的左上角位置
                    x = int(centerX - (width / 2))
                    y = int(centerY - (height / 2))
    
                    # 更新边界框,置信度(概率)以及类别
                    boxes.append([x, y, int(width), int(height)])
                    confidences.append(float(confidence))
                    classIDs.append(classID)
    
        # 使用非极大值抑制方法抑制弱、重叠边界框
        idxs = cv2.dnn.NMSBoxes(boxes, confidences, confidence_thre, nms_thre)
    
        # 确保至少一个边界框
        if len(idxs) > 0:
            # 迭代每个边界框
            for i in idxs.flatten():
                # 提取边界框的坐标
                (x, y) = (boxes[i][0], boxes[i][1])
                (w, h) = (boxes[i][2], boxes[i][3])
    
                # 绘制边界框以及在左上角添加类别标签和置信度
                color = [int(c) for c in COLORS[classIDs[i]]]
                cv2.rectangle(img, (x, y), (x + w, y + h), color, 2)
                text = '{}: {:.3f}'.format(LABELS[classIDs[i]], confidences[i])
                (text_w, text_h), baseline = cv2.getTextSize(text, cv2.FONT_HERSHEY_SIMPLEX, 0.5, 2)
                cv2.rectangle(img, (x, y - text_h - baseline), (x + text_w, y), color, -1)
                cv2.putText(img, text, (x, y - 5), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 0, 0), 2)
    
        # 输出结果图片
        if pathOut is None:
            cv2.imwrite('with_box_' + base_path, img, [int(cv2.IMWRITE_JPEG_QUALITY), jpg_quality])
        else:
            cv2.imwrite(pathOut, img, [int(cv2.IMWRITE_JPEG_QUALITY), jpg_quality])
    
    pathIn = '../image/yolo_test1.jpg'
    pathOut = '../out/yolo_test1.jpg'
    yolo_detect(pathIn,pathOut)

    测试一: 

            原图:

       

            经过YOLO目标检测之后result: 

    测试二: 

            原图:

             经过YOLO目标检测之后result: 

     

    十、 候选区域(region proposals)

            R-CNN(Regions with convolutional networks),会在我们的图片中选出一些目标的候选区域,从而避免了传统滑动窗口在大量无对象区域的无用运算。所以在使用了R-CNN后,我们不会再针对每个滑动窗口运算检测算法,而是只选择一些候选区域的窗口,在少数的窗口上运行卷积网络。

            具体实现:运用图像分割算法,将图片分割成许多不同颜色的色块,然后在这些色块上放置窗口,将窗口中的内容输入网络,从而减小需要处理的窗口数量。

     

     更快的算法:

    (1)R-CNN:给出候选区域,对每个候选区域进行分类识别,输出对象 标签 和 bounding box,从而在确实存在对象的区域得到更精确的边界框,但速度慢;

    (2)Fast R-CNN:给出候选区域,使用滑动窗口的卷积实现去分类所有的候选区域,但得到候选区的聚类步骤仍然非常慢;

    (3)Faster R-CNN:使用卷积网络给出候选区域。

           以上是我对吴恩达讲解目标检测知识的总结,如果有什么理解不到位的地方,还请指点改正 

     

    展开全文
  • 用YOLOV5初步实现目标检测

    千次阅读 2021-12-12 18:07:29
    用YOLOV5初步实现目标检测

     文章目录

    ​前言

    随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就将分享用YOLOV5进行目标检测并进行机器学习的方法

    一、目标检测是什么?

    目标检测(Object Detection也叫目标提取,是一种基于目标几何和统计特征的图像分割。就是在视频或者图像中,通过计算机自动检测出其中的物体,将其框出,并注释。它是计算机视觉领域的核心问题之一。随着计算机技术的发展和计算机视觉原理的广泛应用,利用计算机图像处理技术对目标进行实时跟踪研究越来越热门,对目标进行动态实时跟踪定位在智能化交通系统、智能监控系统军事目标检测及医学导航手术中手术器械定位等方面具有广泛的应用价值。

    二、使用步骤


    1.代码下载

    https://github.com/ultralytics/yolov5


    2.pycharm进行代码运行

    1、打开pycharm新建工程,并打开下载源码的目录,找到detect.py并打开。(你也可以阅读README来获取更多代码的相关信息)

    2、进行代码的初次运行,右键后点击运行 detect.py’,不出意外的话将会出现许多红色的报错,比如“No model named 'yaml’ ”这是因为在你的电脑上缺少运行此程序需要的model,只需要在命令行(cmd)上下载下来就可以。(当然要下载model,还需要配置环境以及将pip源转换到国内镜像)

    3、拿缺少'yaml'为例子,打开命令行,输入pip install pyyaml,回车,就可以看到正在下载该model,如果成功下载会出现一下情景:

    4、在下载完所有model后,打开运行run)菜单,进入编辑配置Edit Configurations)在

    参数Paramters)中输入 --source 0 ,则表示用0号摄像头(笔记本电脑自带位于屏幕上方)进行测试。如输入--source data/images,则表示用data/images下的所有图片进行测试,如果输入--source 1.mp4,则表示用1.mp4视频文件进行测试。

    在这之后在运行detect.py,稍等片刻就会看到摄像头指示灯亮起,目标检测开始了:

    当然这次目标检测初步识别也有识别失败的,如把凳子识别成交通信号灯,此外旁边的小数代表概率。接下来就需要进行大量的数据训练来提高识别精度了。

    运行目标检测


    命令行下的项目model下载


    总结

    以上就是用YOLOV5初步进行目标检测的步骤,此外还可以进一步进行数据训练,使计算机深度学习,达到有更准确的识别结果以及更广泛的识别对象的目的。

    展开全文
  • 目标检测之YOLO算法原理及Python实现 目标检测: 1.目标分类 2.目标定位 3.特征点检测 4.滑动窗口检测 5.卷积的滑动窗口实现 YOLO算法: 1.什么是YOLO 2.边界框(Bounding Box)回归 3.交并...

    机器学习系列 (7)

    图片挂了,大家可移步:
    https://mp.weixin.qq.com/s?__biz=MzU4NTY1NDM3MA==&mid=2247483829&idx=1&sn=47e607838b88ebd87ecb104843ffd69d&chksm=fd8608b8caf181aee143675b16a17111f9bc3bfb2ee18bc2bbebb78e3edf3d42eadafe0092df&token=255604471&lang=zh_CN#rd

    目标检测之YOLO算法原理及Python实现

    目标检测:

    • 1.目标分类
    • 2.目标定位
    • 3.特征点检测
    • 4.滑动窗口检测
    • 5.卷积的滑动窗口实现

    YOLO算法:

    • 1.什么是YOLO
    • 2.边界框(Bounding Box)回归
    • 3.交并比(IOU)
    • 4.非极大抑制(NMS)
    • 5.Anchor box
    • 6.候选区域(Region proposals)(optional)
    • 7.YOLO算法总结

    YOLO的Python实现:

    • 见文章内容

    申明

    本文原理解释及公式推导部分均由LSayhi完成,供学习参考,可传播;代码实现部分的框架由Coursera提供,由LSayhi完成,详细数据及代码可在github查阅。
    https://github.com/LSayhi/DeepLearning

    CSDN博客:https://blog.csdn.net/LSayhi

    微信公众号:AI有点可ai(文末附有二维码,感谢您的关注)

    一、目标检测

    1.目标分类

    • 目标分类即对图像中的物体进行识别分类,是目标检测的第一阶,只要求分辨出对象的类别,常用卷积神经网络(CNN)实现。例如在自动驾驶应用中,目标分类的作用是识别出图片中的物体属于哪一个类别,属于是行人、汽车、自行车、红绿灯、护栏等。

    2.目标定位

    • 目标定位即对图像中的物体进行位置识别,是目标检测的第二阶,要求输出对象的坐标信息,坐标常用中心点和长宽来表示。例如在自动驾驶中,目标定位的作用是确定图片中的行人、汽车等物体的具体位置。

    3.特征点检测

    • 特征点检测即要对物体的某些特征进行识别,这可以通过神经网络输出相应特征点的坐标来实现,只需要把网络的输出改为特征点的坐标。例如在人脸识别应用中,识别出多组人脸特征点的信息,并根据识别出的特征点信息对此次检测的人脸进行识别。

    4.滑动窗口检测

    • 滑动窗口检测即是要通过“滑动”检测窗口,对每一个窗口图像分别输入CNN进行识别,窗口大小可根据实际取值,例如图片像素为6286283,则可取正方形窗口边长为小于628的整数,然后滑动窗口到其它位置,按一定顺序遍历整张图片,输出每一次窗口里是否有物体,是什么物体,性能依赖于窗口大小的选取及滑动的步长,由于CNN需要一个个处理窗口图像,若步长和窗口较小,检测的精度提高,但需要很长的时间;如果步长和窗口较大,虽然时间减小,但可能会降低检测精度。

    Figure 1 : 滑动窗口检测示意图

    5.滑动窗口的卷积实现

    • 滑动窗口的卷积实现是为了解决滑动窗口检测中的矛盾而提出的一种检测方式。为了构建滑动窗口的卷积实现,首先要将CNN最后的全连接层转化成卷积层,举个例子看一下:假设用来做分类任务的CNN的输入大小是14×14×3的tensor,滤波器的大小是5×5×16,最大池化2×2,再经过两层全连接层,输出为softmax层的大小为4(对应四种检测对象,如行人、汽车、摩托车、背景),那么通过把全连接层替换为卷积层,亦可实现和同样的效果,只不过此时的输出的是1×1×4的tensor,过程如下图所示。

    Figure 2 : 全连接转卷积实现

    • 现在通过这个例子来说明为什么滑动窗口的卷积实现更高效,假设现在整张图片的大小是16×16×3,滑动窗口检测的窗口大小为14×14,步长为2,那么对整张图片进行滑动窗口检测需要四次检测,也就是说CNN运行了四次,不难发现(嘿嘿,真的不难!)在四次CNN运行中,有许多计算(卷积操作)是重复的,那么如果减小这些重复计算呢?如果我们对整张16×16×3的团片一起输入CNN进行卷积操作,而不是分四次,那么则有许多公共部分的卷积操作可以共享,大大减小了计算量,结果就是一个2×2×4的块,从正视图的角度看,四个小格子就分别对应普通滑动窗口检测中每一次的结果。

    Figure 3 : 滑动窗口的卷积实现

    以上就是目标检测的基础内容,下个部分介绍YOLO算法在目标检测中的应用。

    二、YOLO算法

    1.什么是YOLO

    • YOLO(you only look once)算法是目标检测算法的一种。YOLO算法在处理图像时,比滑动窗口算法时间复杂度更低,它只需“观察”图片一次,就可以检测出图片中的对象,并且可以检测多个对象,还能定位对象所在的位置(即边界),总结来说YOLO算法就是一种能够分类、定位的目标检测算法。接下来将介绍YOLO算法的具体实现。

    2.边界框预测(bounding box predictions)

    • 在滑动窗口的实现中,我们在图像中哪一个位置检测物体取决于滑动窗口的大小和步长,所以很有可能出现检测的对象超出窗口的范围或者比窗口小得多,所以虽然能检测到物体,但是对于物体的位置信息却难以精确获得。
    • 在YOLO算法中,我们通过bounding box预测,可以获得物体的精确位置信息。以下图为例,假设下图(figure 4)是一张100×100×3像素的图片,你要训练的CNN的输入为100×100×3,为了方便解释我们将整张图片划为3×3个网格(grid,实际可能划为19×19等更精细),每一个网格中若有物体(指的是物体的中心坐标在此网格内,如果物体有部分在某网格,但中心不在此网格,则该物体不属于此网格),则该网格的置信度设为1,否则设为0(1表示有物体,0表示没有物体)。bounding box就是指的图片中物体的边界信息,由中心坐标(x,y)和宽高(w,h)即可表示,然后对于每一个网格,外加 n 数字编码所需检测的n种类别的物体,在训练集中这些信息都是预先标注好的,中心坐标只有一个,必然属于某个网格,宽和高不属于任一网格,可以跨越多个网格,这就解决了滑动窗口和卷积实现的滑动窗口方法只能按窗口预测位置的不灵活。

    Figure 4 : Bounding box 标签设定

    • 总结起来,对于第i个网格,标签Yi为(Pc,bx,by,bh,bw,C1,C2,C3…Cn),Pc取1或0,代表网格中有无物体,bx,by,bh,bw表示物体中心坐标和高度宽度,C1,C2,C3…Cn表示物体的种类的编码,如属于第一类则编码为(1,0,0……0),第二类则(0,1,0……0),依次类推,如果网格中没有物体,则Pc为0,剩下的数字我们不关系其具体值,所以对于整张图片,一共有9个网格,那么这张图片的标签Y就为9个网格标签的集合,示例如下(为了简便,图片中给出了其中三个网格的便签)。比如在这个例中,CNN的输入是100×100×3,经过卷积层池化层等输出的大小为3×3×8,3×3是网格的数量,实际是CNN提取到的3×3的网格特征,8是每个网格的标签,我们通过将训练集输入网络,让网络学习到这种标签的方式,在验证集上验证,并运用到测试集上,部署到实际系统中。

    3.交并比

    • 交并比(IOU),即交集和并集的比值。在YOLO算法中,交并比是用来判断定位是否准确的一个指标。如果网络预测的边界框和实际的边界框是高度重合的,则交并比会比较大,反之,则小。所以,交并比越大,则预测的位置信息就越准确。一般我们认为IOU>0.6时定位准确,当然阈值越大,则精度越高。这一概念将运动到非极大抑制中。

    Figure 5 : 交并比IOU

    4.非极大抑制:

    • 非极大抑制(Non-Max suppression,NMS),即是抑制非极大值(不是最大值,这点在讲述具体内容时可以更加明显理解)的表现。当我们在运行CNN进行Bouding box预测时,对于图像中的每一单个物体,我们需要做到的的是正确分类并且输出有且仅有一个边界框,然而在实际中,由于不是所有CNN提取的物体特征都属于一个网格(虽然一个物体的中心只有一个,但是CNN不一定能准确判断出对应区域只有一个物体),所以很有可能有多个网格输出同一区域同一个物体的积极标签,这时候它们输出的分类是一样的,只不过中心坐标和宽高不一样而已(但有交集)。那么如何解决这个问题呢?我们知道,由于网格大小和物体大小的非包含关系,可能出现对同一个物体进行多次预测,得到多个边界框,但可以理解的是,由于都是预测同一个物体,这些边界框是会有比较大交集的,这个时候想只保留其中的一个最可能是实际物体位置的边界框,由交并比的概念,我们可以对满足[①预测结果是同一个物体且②边界框交并比大于某选定阈值]这两个条件的边界框进行非极大抑制,就是去掉概率(Pc×Ci)小的,保留概率最大的那个框。当然,对于那些交并比低于阈值的,我们也同样对他们运行NMS。
    • 具体流程,举例说明。对于这张图片,共有19×19个网格,我们让CNN输出19×19×8的大小预测每个网格是否有物体,是什么物体,物体坐标信息,在这个有19×19网格的图片中有两俩车,对于每辆车,可能会有多个网格输出它们那有车(Pc×ci大,且(bx,by)即中心坐标在它那),如Figure 6。

    Figure 6 : 可能对同一物体多次预测

    • 那么输出的边界框就可能为,如Figure 7,这时我们先找到对于车辆这一种类所有预测的框的置信度(概率值)中最大的一个,即右边那辆车的0.9的那个框,将它保留,然后将和它有很高交并比的其它框抑制(变暗),由于左边那辆车的几个框与右边交并比为0,所以暂时不会被抑制(这就是为什么称“非极大抑制”,而不是“非最大抑制”),同样的,在除去保留的那个框后,找到所有没有被抑制框中,找置信度最大的那个,也就是左边的那个0.8的框,然后同样对和它有高交并比的框进行非极大抑制,最后剩下了右边0.9和左边0.8两个框,完成预测。如Figure 8所示

    Figure 7 : 非极大抑制过程


    Figure 8 : 非极大抑制结果

    Anchor box:

    • Anchor box, 是为了解决在同一网格中存在多个物体中心点的情形而提出的,即可以让一个格子拥有检测多个对象的能力。见Figure9,图中人和汽车的中点落在了同一个网格中,而根据标签的编码方式一个网格只能给出一个输出,如何解决,Anchor box就是一种解决方式。

    Figure 9 : 同一网格多个对象


    Figure 10 : 同一网格多个对象

    • 该方法即是通过预先设定多个Anchor box,让对象不仅和网格对应,还对应Anchor box,anchor box的形状和新的标签编码方式可见图Figure10.此例中以两个Anchor box为例,标签Y相当于在原先的标签上复制了一次,对应两个不同形状的Anchor box。在训练集中,由于行人形状与Anchor box 1更相似,我们把其编码赋值给标签的第一部分(上半部分)里,汽车更像Anchor box 2,我们赋值给第二部分(下半部分)。这样,图像中的对象不仅和网格有关,还与Anchor box关联起来。那么Anchor box的形状如何选取?个数?一般是根据实际情况人工选取形状和个数,但也可以用K-means的方法自动选择,具体可见YOLO的论文。总结来说,Anchor box方法通过拓展标签向量的维数赋能YOLO的每一个网格,使其可以同时检测多个对象。

    候选区域

    • 候选区域(RP),候选区域是在计算机视觉领域一个比较有影响力的概念,它可以加快滑动窗口等方法的速度。候选区域即通过事先找出图像中可能会存在对象的区域(通过图像分割等),然后在对这些区域运行CNN,我们把这称为(作者Ross Girshick,Jeff Donahue,Trevor Darrell,Jitendra Malik),RCNN的速度比CNN快得多。

    Figure 11 : 图像分割

    • 后来,在此基础上又提出了(作者Ross Girshik),大致就是把RCNN的滑动窗口实现改成了卷积滑动窗口实现,这进一步提高了速度;又后来(hahaha),Faster -RCNN(任少卿 (Shaoqing Ren)、 何凯明 (Kaiming He)、 Ross Girshick和孙剑 (Jiangxi Sun)被提出,这种方式通过CNN获得候选区域,比图像分割算法更快[Figure 12]。“但这些算法有一个共同的缺点是需要两步,第一步是得到候选区域,第二步对候选区域运行CNN,而YOLO算法只需一步,可能会是个长远来说更有希望的发展方向”[Andrew Ng]。

    Figure 12 : 基于候选区域的算法对比

    YOLO算法总结

    • 1.**Training ** :训练集集数据标签使用Anchor box方式,CNN结构输入为(j×j×k,j×j为像素维度,k为通道维度),输出为(n×n×m×L,n×n为网格维度,m为Anchor的个数维度,L为每个Anchor的长度维度),其中L=1+4+H,1是概率维度,4是box坐标维度,H是种类维度的tensor;
    • 2.Prediction :将训练好的网络保存,输入想要测试的图片,输出(n×n×m×L)维度的tensor,得到预测的标签信息;
    • 3.**Fliter + NMS **:将预测概率低于阈值标签所对应Anchor box过滤,然后分别对每一个类别单独运行非极大抑制,得到最终结果。

    3.1 本文相应的代码及资料已经以.ipynb文件和.pdf形式在github中给出。

    .ipynb文件在链接/Coursera-deeplearning深度学习/课程4/week3/

    .pdf文件在链接/Coursera-deeplearning深度学习

    github地址:https://github.com/LSayhi/DeepLearning

    这里写图片描述

    展开全文
  • 10行代码实现目标检测

    千次阅读 2018-06-23 09:46:58
    作为人工智能的一个重要领域,计算机...在本教程中,我们将简要介绍包括当前目标检测的概念,软件开发人员所面临的挑战,相应的解决方案以及执行高性能目标检测的编码教程等内容。目标检测是指计算机和软件系统在图...
  • 作为人工智能的一个重要领域,计算机...在本教程中,我们将简要介绍包括当前目标检测的概念,软件开发人员所面临的挑战,相应的解决方案以及执行高性能目标检测的编码教程等内容。目标检测是指计算机和软件系统在图...
  • 3) 目标识别,即是在所有的给定数据中,分类出哪一些sample是目标,哪一些不是。这个仅仅做一下分类任务。 4)目标追踪,这个任务很重要的第一点是目标定位(Target Locating)。而且这个任务设计到的数据一般具有...
  • !... 如上图所示(转换中有两个表输入,一个叫源表,一个叫目标表,他们来自两个不同的库,表名是一个变量 ,抓取数据库中所有表,所以查询是 select * from ${TABLENAME} ,表名相同表结构...有什么好方法可以实现
  • 深度学习之目标检测与目标识别

    万次阅读 多人点赞 2018-06-05 21:58:54
    本文主要讲述了目标识别中的第一种类型---基于region proposal的目标检测和目标识别的算法, 主要主要包括R-CNN,Fast R-CNN,Faster R-CNN等网络, 揭示了基于region proposal的目标检测和目标识别的算法的发展历程....
  • 目标检测原理与实现

    千次阅读 2016-11-29 22:53:13
    Detection)原理与实现(一) 基于阈值图像处理的目标检测  从今天起开始要写一些关于目标检测的文章,涵盖从简单的阈值图像处理检测、霍夫变换(hough transform)检测、模版匹配检测(刚体匹配)、AAM+ASM+...
  • 目标跟踪计数opencv(C++实现

    万次阅读 多人点赞 2017-08-08 17:44:49
    今天小博就把多目标检测,追踪,计数的代码贴出来供大家把玩,如有有疑问,可...这里要根据区域分割过程给出的目标质心位置,计算出目标位移,并且根据质心位置的变化判断出目标的运动方向,以及运动目标是否在观察窗口
  • 目标线性规划求解方法及matlab实现

    万次阅读 多人点赞 2018-01-21 14:51:02
    求解多目标线性规划的基本思想是将多目标转化...多目标线性规划模型是有两个或两个以上的目标函数,且所有目标函数和约束条件是线性的,数学模型表示: 我们记 则上述目标规划可简化: ...
  • 2014年终总结,我决定要实现的三个目标

    万次阅读 多人点赞 2014-12-31 09:09:24
    我觉得目标对于每个人来讲应该是要一直存在的,去年我给自己定的三个目标,今年已经是全部完成了,那么现在我又要给自己制定新的目标了,从明天开始在新的一年当中还是要继续努力,尽可能地把新的目标也一一实现。...
  • 目标检测(Object Detection)

    万次阅读 多人点赞 2020-11-20 19:38:58
    什么目标检测2. 目标检测的核心问题3. 目标检测算法分类1)Tow Stage2)One Stage4. 目标检测应用1)人脸检测2)行人检测3)车辆检测4)遥感检测二、目标检测原理1. 候选区域产生1)滑动窗口2)选择性搜索① 什么...
  • 目标跟踪介绍(单目标

    万次阅读 多人点赞 2019-06-21 22:01:55
    随着研究人员不断地深入研究,视觉目标跟踪在近十几年里有了突破性的进展,使得视觉跟踪算法不仅仅局限于传统的机器学习方法,更是结合了近些年人工智能热潮—深度学习(神经网络)和相关滤波器等方法,并取...
  • SORT 多目标跟踪算法笔记

    万次阅读 多人点赞 2019-04-21 15:20:46
    sort 是一种简单的在线实时多目标跟踪算法。文章要点: 以 IoU 作为前后帧间目标关系度量指标; 利用卡尔曼滤波器预测当前位置; 通过匈牙利算法关联检测框到目标; 应用试探期甄别虚检; 使用 Faster R-...
  • 目标识别

    万次阅读 多人点赞 2016-08-28 23:15:40
    众所周知,当前是信息时代,信息的获得、加工、处理以及应用有了飞跃发展。人们认识世界的重要知识来源就是图像信息,在很多场合,图像所传送的信息比其他形式的信息更丰富、真切和具体。人眼与大脑的协作使得人们...
  • 2018.5-2019.1基于FPGA平台的目标检测网络实现

    千次阅读 多人点赞 2019-08-05 19:36:47
    2018.5 - 2019.1 基于FPGA平台的目标检测网络实现,将目标检测模型实现为c++代码,成功通过HLS工具部署于FPGA平台上,实现公交摄像头画面中人头的检测。 目录 一、项目背景 1.1 公司背景 1.2 应用背景 1.3 技术...
  • 最近两三年,我们部门都会在年初设定部门目标和个人目标,实施以来效果很明显,大家知道部门要做什么,个人应该做什么,我们会在月末进行复盘和总结,这就是团队的进步,也是个人的进步。 我们是比较传统的IT公司...
  • 目标检测综述

    万次阅读 多人点赞 2019-07-09 21:36:26
    这意味着,我们不仅要用算法判断图片中是不是一辆汽车, 还要在图片中标记出它的位置, 用边框或红色方框把汽车圈起来, 这就是目标检测问题。 其中“定位”的意思是判断汽车在图片中的具体位置。 近几年来,目标...
  • 深度学习中,为了提高模型的精度和泛化能力,往往着眼...2.为什么要训练负样本 训练负样本的目的是为了降低误检测率、误识别率,提高网络模型的泛化能力。通俗地讲就是告诉检测器,这些“不是你要检测的目标”。 3.F
  • IGD反转世代距离-多目标优化评价指标概念及实现

    千次阅读 多人点赞 2020-04-17 22:15:47
    IGD反转世代距离-多目标优化评价指标概念及实现 觉得有用的话,欢迎一起讨论相互学习~ 参考资料 多目标进化优化[1]-郑金华老师,邹娟老师著 实验室人手一本人人必看的宝藏图书! IGD(Inverted Generational ...
  • 教学目标四个维度_教学目标很重要

    千次阅读 2020-11-21 23:58:49
    教学目标 教学目标有也叫学习目标...教学目标还要分解课堂目标,课堂目标包括学的目标,教的目标,策略的目标,这些目标组成一张课堂网,将知识学习,技能形成,思维培养连接起来,共同作用于学习的主体——学生。...
  • 目标检测-RCNN系列

    万次阅读 多人点赞 2017-01-11 16:26:12
    • RCNN RCNN(Regions with CNN features)是将CNN方法应用到目标检测问题上的一个里程碑,由年轻有为的RBG大神提出,借助CNN良好的特征提取和分类性能,通过RegionProposal方法实现目标检测问题的转化。...
  • * 将源目录的所有文件(含子目录)拷贝到 目标目录中。 * * @param srcDir * 源目录 * @param destDir * 目标目录 */ public static void copyDiretory(File srcDir, File destDir) { File[] list...
  • 运动目标跟踪算法

    万次阅读 多人点赞 2019-02-17 12:53:17
    在特定的场景中,有一些经典的算法可以实现比较好的目标跟踪效果。本文介绍了一般的目标跟踪算法,对几个常用的算法进行对比,并详细介绍了粒子滤波算法和基于轮廓的目标跟踪算法。最后简单介绍了目标遮挡的处理、多...
  • 用Python实现目标检测 现在所有的依赖项已经安装完毕,可以用Python实现目标检测了。 在下载的代码仓库中,将目录更改: models/research/object_detection 这个目录下有一个叫object_detection_tutorial.ipynb...
  • 深度学习(目标检测)---目标检测20年

    万次阅读 多人点赞 2018-05-30 11:39:42
    目标检测二十年“目标检测是当前计算机视觉和机器学习领域的研究热点。从Viola-Jones Detector、DPM等冷兵器时代的智慧到当今RCNN、YOLO等深度学习土壤孕育下的GPU暴力美学,整个目标检测的发展可谓是计算机视觉领域...
  • Windows下利用dlib19.2实现目标追踪

    千次阅读 2017-07-08 12:03:22
    Windows下利用dlib19.2实现目标追踪

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,517,897
精华内容 607,158
关键字:

为什么所有的目标都能实现