这两天有个项目要用到mask_RCNN,之前用win10配了一下午,愣是跑不了demo,主要是因为写pycocotools的作者压根就没考虑windows用户,真是巨坑。
下面提供一种非常可靠的方案,不管你之前环境配成什么沙雕样子,现在你按我的来,不出意外至少可以跑通demo。
这个方案第一点就是放弃windows,用linux来跑mask_RCNN。
楼主我正好有linux课程要做实验,就干脆装了个Ubuntu第二系统在电脑上,感觉真是爽歪歪阿,但没有想要长期用linux想法的,可以用windows自带的ubuntu子系统来写,或者用vmware虚拟机创建一个linux。
但windows自带的子系统和虚拟机都有个致命缺陷,就是不能用gpu,只能用cpu,所以处理速度大概会比完整的系统慢几十倍。
但仅入门而言,demo跑一张很复杂的对象分割图也就第一次需要时间久一点,大概十多秒,后面就两三秒。
配置mask_RCNN传送门(保证三点:1.python用3.6版本,2.anaconda用anaconda3-4.1.3 3.tenserflow用cpu版本,也就是按照传送门的做):https://www.cnblogs.com/herd/p/9364911.html
这么弄完会出现一个问题,tenserflow1.5与keras2.1.6版本以上不兼容,到最后会出现一个错误:import name 'tf_utils' error
所以在运行jupyter notebook之前加一句:
pip install --upgrade keras==2.1.6