faster-rcnn错误信息 : tensorflow.python.framework.errors_impl.InvalidArgumentError: Assign requires shapes of both tensors to match. lhs shape= [21] rhs shape= [2]
1
Traceback (most recent call last):
2
File
"
C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\training\saver.py
"
, line 1276,
in
restore
3
{self.saver_def.filename_tensor_name: save_path})
4
File
"
C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\client\session.py
"
, line 929,
in
run
5
run_metadata_ptr)
6
File
"
C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\client\session.py
"
, line 1152,
in
_run
7
feed_dict_tensor, options, run_metadata)
8
File
"
C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\client\session.py
"
, line 1328,
in
_do_run
9
run_metadata)
10
File
"
C:\Users\Administrator\AppData\Local\Programs\Python\Python36\lib\site-packages\tensorflow\python\client\session.py
"
, line 1348,
in
_do_call
11
raise
type(e)(node_def, op, message)
12
tensorflow.python.framework.errors_impl.InvalidArgumentError: Assign requires shapes of both tensors to match. lhs shape= [21] rhs shape= [2
]
13
[[node save/Assign_517 (defined at G:/jianfeng/project/rubblish_det/faster_rcnn/tf-faster-rcnn-master/tools/demo.py:149) ]]
我的代码来自 https://github.com/endernewton/tf-faster-rcnn
这是由于类别数目不一致,导致的 ;看错误信息倒数第二行,lhs为21类 rhs为2类
解决方法:在demo.py文件中找到下面两行代码,将 "TEST"后的21改为 2 因为我的数据类别是 background+单类别=2
1
net.create_architecture(
"
TEST
"
, 21
,
2
tag=
'
default
'
, anchor_scales=[8, 16, 32])

