From dfbec7ea2bf7d324fe80647dde72957683539974 Mon Sep 17 00:00:00 2001
From: AlexeyAB <alexeyab84@gmail.com>
Date: Wed, 18 Jul 2018 12:08:34 +0000
Subject: [PATCH] PascalVOC label scripts are updated
---
scripts/voc_label_difficult.py | 8 ++++----
scripts/voc_label.py | 13 ++++++++-----
src/yolo_v2_class.hpp | 22 +++++++++++-----------
3 files changed, 23 insertions(+), 20 deletions(-)
diff --git a/scripts/voc_label.py b/scripts/voc_label.py
index d1e8823..679fc36 100644
--- a/scripts/voc_label.py
+++ b/scripts/voc_label.py
@@ -10,10 +10,10 @@
def convert(size, box):
- dw = 1./size[0]
- dh = 1./size[1]
- x = (box[0] + box[1])/2.0
- y = (box[2] + box[3])/2.0
+ dw = 1./(size[0])
+ dh = 1./(size[1])
+ x = (box[0] + box[1])/2.0 - 1
+ y = (box[2] + box[3])/2.0 - 1
w = box[1] - box[0]
h = box[3] - box[2]
x = x*dw
@@ -34,7 +34,7 @@
for obj in root.iter('object'):
difficult = obj.find('difficult').text
cls = obj.find('name').text
- if cls not in classes or int(difficult) == 1:
+ if cls not in classes or int(difficult)==1:
continue
cls_id = classes.index(cls)
xmlbox = obj.find('bndbox')
@@ -54,3 +54,6 @@
convert_annotation(year, image_id)
list_file.close()
+os.system("cat 2007_train.txt 2007_val.txt 2012_train.txt 2012_val.txt > train.txt")
+os.system("cat 2007_train.txt 2007_val.txt 2007_test.txt 2012_train.txt 2012_val.txt > train.all.txt")
+
diff --git a/scripts/voc_label_difficult.py b/scripts/voc_label_difficult.py
index 93e57fe..cfffce3 100644
--- a/scripts/voc_label_difficult.py
+++ b/scripts/voc_label_difficult.py
@@ -10,10 +10,10 @@
def convert(size, box):
- dw = 1./size[0]
- dh = 1./size[1]
- x = (box[0] + box[1])/2.0
- y = (box[2] + box[3])/2.0
+ dw = 1./(size[0])
+ dh = 1./(size[1])
+ x = (box[0] + box[1])/2.0 - 1
+ y = (box[2] + box[3])/2.0 - 1
w = box[1] - box[0]
h = box[3] - box[2]
x = x*dw
diff --git a/src/yolo_v2_class.hpp b/src/yolo_v2_class.hpp
index 3dc9386..199b1c9 100644
--- a/src/yolo_v2_class.hpp
+++ b/src/yolo_v2_class.hpp
@@ -1,13 +1,13 @@
#pragma once
#ifdef YOLODLL_EXPORTS
#if defined(_MSC_VER)
-#define YOLODLL_API __declspec(dllexport)
+#define YOLODLL_API __declspec(dllexport)
#else
#define YOLODLL_API __attribute__((visibility("default")))
#endif
#else
#if defined(_MSC_VER)
-#define YOLODLL_API __declspec(dllimport)
+#define YOLODLL_API __declspec(dllimport)
#else
#define YOLODLL_API
#endif
@@ -71,7 +71,7 @@
YOLODLL_API int get_net_height() const;
YOLODLL_API int get_net_color_depth() const;
- YOLODLL_API std::vector<bbox_t> tracking_id(std::vector<bbox_t> cur_bbox_vec, bool const change_history = true,
+ YOLODLL_API std::vector<bbox_t> tracking_id(std::vector<bbox_t> cur_bbox_vec, bool const change_history = true,
int const frames_story = 10, int const max_dist = 150);
std::vector<bbox_t> detect_resized(image_t img, int init_w, int init_h, float thresh = 0.2, bool use_mean = false)
@@ -97,14 +97,14 @@
{
if (mat.data == NULL) return std::shared_ptr<image_t>(NULL);
- cv::Size s = mat.size();
- if (get_net_width() != s.width || get_net_height() != s.height) {
- cv::Mat det_mat;
- cv::resize(mat, det_mat, cv::Size(get_net_width(), get_net_height()));
- return mat_to_image(det_mat);
- }
+ cv::Size network_size = cv::Size(get_net_width(), get_net_height());
+ cv::Mat det_mat;
+ if (mat.size() != network_size)
+ cv::resize(mat, det_mat, network_size);
+ else
+ det_mat = mat; // only reference is copied
- return mat_to_image(mat);
+ return mat_to_image(det_mat);
}
static std::shared_ptr<image_t> mat_to_image(cv::Mat img_src)
@@ -304,7 +304,7 @@
std::vector<bbox_t> result_bbox_vec;
- if (err_cpu.cols == cur_bbox_vec.size() && status_cpu.cols == cur_bbox_vec.size())
+ if (err_cpu.cols == cur_bbox_vec.size() && status_cpu.cols == cur_bbox_vec.size())
{
for (size_t i = 0; i < cur_bbox_vec.size(); ++i)
{
--
Gitblit v1.10.0