Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何向Tensorflow对象检测python模型绑定框添加自定义颜色?_Python_Tensorflow_Computer Vision_Data Science_Object Detection - Fatal编程技术网

如何向Tensorflow对象检测python模型绑定框添加自定义颜色?

如何向Tensorflow对象检测python模型绑定框添加自定义颜色?,python,tensorflow,computer-vision,data-science,object-detection,Python,Tensorflow,Computer Vision,Data Science,Object Detection,目前,我正在使用标准的Tensorflow对象检测脚本,该脚本经过定制培训,我想更改绑定框的颜色,以适应我的应用程序的性质。然而,我似乎找不到这样做的方法。例如,与其绘制绿色框id,不如在检测到的对象周围绘制红色框。提前谢谢你 我找到了一种方法——在经历了很多麻烦之后。我没有发现任何关于如何做到这一点的文件。 有点,因为有些颜色似乎不起作用 打开visualizations_utils.py。应位于Lib\site packages\utils中。 第41到63行是您的颜色 第164行正下方 d

目前,我正在使用标准的Tensorflow对象检测脚本,该脚本经过定制培训,我想更改绑定框的颜色,以适应我的应用程序的性质。然而,我似乎找不到这样做的方法。例如,与其绘制绿色框id,不如在检测到的对象周围绘制红色框。提前谢谢你

我找到了一种方法——在经历了很多麻烦之后。我没有发现任何关于如何做到这一点的文件。 有点,因为有些颜色似乎不起作用

打开visualizations_utils.py。应位于Lib\site packages\utils中。 第41到63行是您的颜色

第164行正下方

draw=ImageDraw.Drawimage

输入新行

颜色=‘粉色’

保存它,现在您已将颜色更改为粉红色。第175行,可以使标签文本变小

有些颜色似乎不起作用,比如红色

在标签映射pbtxt文件中添加“颜色”属性。i、 e

项目{ 名称:/m/01g317 身份证号码:1 显示名称:person 颜色:粉红色 }

打开文件“research/object\u detection/protos/string\u int\u label\u map.proto”。添加以下行

optional string color = 4;
注意分号和大括号

然后需要序列化数据,因此从research运行以下命令 文件夹

在此之前,您必须基于您的操作系统安装protobuf

更改文件object\u detection/utils/lable\u map\u util.py的函数“convert\u label\u map\u to\u categories”的代码

类别=[] 已添加的ID列表=[] 如果未标记地图: 标签标识偏移量=1 对于rangemax_num_类中的类id: 类别.附加{ “id”:类id+标签id偏移量, “名称”:“类别”{}.formatclass\u id+标签\u id\u偏移量 } 退货类别 对于label_map.item中的项目:

if not 0 < item.id <= max_num_classes:
  logging.info(
      'Ignore item %d since it falls outside of requested '
      'label range.', item.id)
  continue
if use_display_name and item.HasField('display_name'):
  name = item.display_name
else:
  name = item.name

if use_display_name and item.HasField('color'):
  color = item.color
else:
  color = ''

if item.id not in list_of_ids_already_added:
  list_of_ids_already_added.append(item.id)
  categories.append({'id': item.id, 'name': name, 'color': color})          
return categories
在代码之后

if agnostic_mode:
          box_to_color_map[box] = 'DarkOrange'
else:
         if classes[i] in category_index.keys():
            class_color = category_index[classes[i]]['color']
            box_to_color_map[box] = class_color
if agnostic_mode:
          box_to_color_map[box] = 'DarkOrange'