混实验室这一年

从去年元旦进实验室开始算起,已经整整一年的时间了。虽然工作效率不高,但是去的还算勤;虽然离发论文还有十万八千里,但是干了不少杂活;虽然没有一分钱的收入,但是了解了项目运作的流程。总之,还算是很有意思的一年。

  最早做的工作是通过彩信发送报警图片,通过短信报告火情。其实这个看似相当简单的工作到现在也没有完全做好,真是惭愧虽然这也不能全怪我。现在跟别人聊起这个项目,说起实时短信报警,还是很心虚。说起来,一个能长时间稳定工作的系统,还真没想象的那么容易实现的。程序运行几周还好,但是到一个月多,往往就莫名其妙的退出,还有一台机子连exe文件都没了(机子上没有防火墙啊),甚至我用批处理每天重启一遍程序都还能有问题我擦。这东西不仅跟程序有关,还跟盗版系统还有一碰就掉的网卡硬件有关,跟网卡驱动也有点关系,而且周期这么长还很难调试。看起来,写一个能用的程序是一回事,写一个稳定的程序又是另一回事。这方面我真是太缺乏经验了。

  这个小程序也让我明白如何跟公司合作,踢皮球。连毕业旅行的时候都时不时的有公司人员给我打开电话询问程序出bug了如何解决。开始还挺上心的,觉得给别人添了麻烦,到了后来也就习惯了。有些事不在能力范围内,真不是努力就能解决的,这时候,踢皮球也是一种艺术。

  跟建筑学院合作了两个项目,一个建筑沉降检测,一个古建筑形貌图绘制,也就是我的毕设。这两个做的都有点略恶心。这么专业的问题建筑学院也不给我搞个顾问还让我自己学实在是没多少合作的诚意。

  最后做的建筑沉降检测就是比较两张照片里的点的距离,这也太不专业了。这个软件别的功能还是挺丰富的,能自动读取记录照片日期,有数据库记录每次比较的结果,能导出比较结果生成excel表格,有软件适用版功能,等等乱七八糟的小玩意还是挺花哨的。界面也很漂亮,操作人性化。但这么华丽的外观终究掩盖不了它朴素的功能,连我这个非专业人士都觉得它不能解决实际问题。最终,我把试用版交给建筑学院的人后就再无音讯了。算起来,这个试用版都过期半年多了。要是当初建筑学院的人能跟我有点更专业的交流和指导,这东西的下场也不会这样。

  古建筑形貌图绘制是我接过的最恶心的项目,没有之一。这是一个根本无法完成的任务,从理论上就行不通。被安排上了这个项目,就像明知道这是一坨shit还要大口吃下去一样。虽然跟老师还有建筑学院的人沟通了很多次,但是都没起到多大效果。不过,它至少让我学会,面对不现实的想法,无法完成的任务,馊主意等,其实必须要学会出工不出力,尽力搪塞。

  说了这么多好像在实验室我成天出工不出力似的,其实也不算。比如从暑假开始做的人员异常行为检测就还说得过去。通过分析摄像头采集到的视频影像,可以分析视频中人员闯入禁止区,游荡,翻越围墙等行为。从一个从未做过视频处理的新人,到在和平区教育局安装了第一版程序,再到现在,不能不说还进步了些。虽然与专门研究视频处理的人相比,我做的东西水的不能再水了,但是能卖出去能用还挺好用我就挺满足了。人员闯入禁止区用的是一般的多高斯背景法外外加对轮廓面积位置做粗略判断,hog+svm判断关键帧,这个opencv里面已经有了训练好的分类器。原理上简单的很但是就是挺好用的,实时性好。好点的机子带个8路问题不大。人员翻墙检测倒是纠结了一阵子,尤其是人的跟踪那一部分。但是最后也解决了,感觉自己对视频处理的理解又深入了不少。现在这个算法原型已经完成了,等到考完试可以安装测试了,效果好的话可以看看申个专利。人员徘徊以前用了很简单的算法,人从区域中出去再会来就检测不到了。这完全没有啥实用性。后来读了tld算法的论文,觉得可以应用在我的徘徊检测算法中,这样做好了如果效果还行,就又可以申一个专利了。

  思来想去一年中学到挺多东西,也有太多的不足。先是对行业前沿关注不够,以后不仅要多看看论文,还得去大公司网站上溜溜。还有算法基础挺薄弱的,还真得多花时间学习学习。再有就是平时很多方法习惯都不专业,走了很多弯路,还是需要多接触些人,增加对专业工具的了解啊。总的来说,这一年就这样过去,我自知不是什么聪明的人,也谈不上特别努力,充其量还算是有个认真的态度。一年能做出这些成果,也算还能将就。希望新的一年,能有新的进步,新的收获。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这里提供了两种方法来判断一个日期是这一年的第几天。第一种方法是使用for循环和if语句,累加前面所有月份的天数,然后再加上当前月份的天数,即可得到这一天是这一年的第几天。第二种方法是使用switch语句,根据当前月份的大小,累加前面所有月份的天数,然后再加上当前月份的天数,即可得到这一天是这一年的第几天。两种方法的实现代码如下: 方法一: ```java public static void main(String[] args) { Scanner inputScanner = new Scanner(System.in); System.out.println("请输入月份:"); int month = inputScanner.nextInt(); System.out.println("请输入日期:"); int day = inputScanner.nextInt(); int days = day; for(int i=1;i<month;i++) { if(i ==4 || i==6 ||i==9 ||i==11) { days +=30; }else if(i==2){ days +=28; }else { days+=31; } } System.out.println(month +"月"+day+"日是这一年的第"+days+"天"); } ``` 方法二: ```java public static void main(String[] args) { Scanner inputScanner = new Scanner(System.in); System.out.println("请输入月份:"); int month = inputScanner.nextInt(); System.out.println("请输入日期:"); int day = inputScanner.nextInt(); int days = day; switch (month) { case 12: days +=30; case 11: days +=31; case 10: days +=30; case 9: days +=31; case 8: days +=31; case 7: days +=30; case 6: days +=31; case 5: days +=30; case 4: days +=31; case 3: days +=28; case 2: days +=31; } System.out.println(month +"月"+day+"日是这一年的第"+days+"天"); } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值