Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
deepinfer
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
yangxue
deepinfer
Commits
a4fe9ff5
Commit
a4fe9ff5
authored
Mar 05, 2024
by
xin.wang.waytous
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
int8-support
parent
66e4307c
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
34 additions
and
16 deletions
+34
-16
CMakeLists.txt
CMakeLists.txt
+2
-2
trt_infer.cpp
src/libs/inferences/tensorrt/trt_infer.cpp
+16
-7
trt_yolov5_infer.cpp
src/libs/inferences/tensorrt/trt_yolov5_infer.cpp
+15
-6
track.cpp
src/libs/trackers/track.cpp
+1
-1
No files found.
CMakeLists.txt
View file @
a4fe9ff5
...
@@ -27,8 +27,8 @@ include_directories(include)
...
@@ -27,8 +27,8 @@ include_directories(include)
# tensorrt
# tensorrt
# include_directories(/root/TensorRT/TensorRT-7.0.0.11-cuda-10.0/include)
# include_directories(/root/TensorRT/TensorRT-7.0.0.11-cuda-10.0/include)
# link_directories(/root/TensorRT/TensorRT-7.0.0.11-cuda-10.0/lib)
# link_directories(/root/TensorRT/TensorRT-7.0.0.11-cuda-10.0/lib)
include_directories
(
/
root/TensorRT
/TensorRT-8.2.3.0/include
)
include_directories
(
/
home/ubuntu/projects/infer/cuda
/TensorRT-8.2.3.0/include
)
link_directories
(
/
root/TensorRT
/TensorRT-8.2.3.0/lib
)
link_directories
(
/
home/ubuntu/projects/infer/cuda
/TensorRT-8.2.3.0/lib
)
# aarch64
# aarch64
# # figure out real path
# # figure out real path
# include_directories(/home/nvidia/.../tensorrt-7.1-aarch64-DCN/include)
# include_directories(/home/nvidia/.../tensorrt-7.1-aarch64-DCN/include)
...
...
src/libs/inferences/tensorrt/trt_infer.cpp
View file @
a4fe9ff5
...
@@ -168,11 +168,19 @@ bool TRTInference::BuildEngine(YAML::Node& configNode){
...
@@ -168,11 +168,19 @@ bool TRTInference::BuildEngine(YAML::Node& configNode){
#endif
#endif
}
}
else
if
(
runMode
==
2
){
//int8
else
if
(
runMode
==
2
){
//int8
LOG_ERROR
<<
"No supported int8"
;
// LOG_ERROR << "No supported int8";
/*LOG_INFO <<"Set Int8 Mode";
// /*
if (!builder->platformHasFastInt8())
LOG_INFO
<<
"Set Int8 Mode"
;
if
(
!
builder
->
platformHasFastInt8
()){
LOG_INFO
<<
"Notice: the platform do not has fast for int8."
;
LOG_INFO
<<
"Notice: the platform do not has fast for int8."
;
return
false
;
}
// builder->setInt8Mode(true);
#ifdef TRT_8
builderConfig
->
setFlag
(
nvinfer1
::
BuilderFlag
::
kINT8
);
#else
builder
->
setInt8Mode
(
true
);
builder
->
setInt8Mode
(
true
);
#endif
if
(
configNode
[
"calibImgPathFile"
].
as
<
std
::
string
>
().
size
()
>
0
){
if
(
configNode
[
"calibImgPathFile"
].
as
<
std
::
string
>
().
size
()
>
0
){
std
::
vector
<
float
>
inputMean
=
configNode
[
"inputMean"
].
as
<
std
::
vector
<
float
>>
();
std
::
vector
<
float
>
inputMean
=
configNode
[
"inputMean"
].
as
<
std
::
vector
<
float
>>
();
std
::
vector
<
float
>
inputStd
=
configNode
[
"inputStd"
].
as
<
std
::
vector
<
float
>>
();
std
::
vector
<
float
>
inputStd
=
configNode
[
"inputStd"
].
as
<
std
::
vector
<
float
>>
();
...
@@ -180,16 +188,17 @@ bool TRTInference::BuildEngine(YAML::Node& configNode){
...
@@ -180,16 +188,17 @@ bool TRTInference::BuildEngine(YAML::Node& configNode){
configNode
[
"calibImgPathFile"
].
as
<
std
::
string
>
(),
configNode
[
"calibImgPathFile"
].
as
<
std
::
string
>
(),
configNode
[
"calibTableCache"
].
as
<
std
::
string
>
(),
maxBatchSize
,
configNode
[
"calibTableCache"
].
as
<
std
::
string
>
(),
maxBatchSize
,
configNode
[
"inputWidth"
].
as
<
int
>
(),
configNode
[
"inputHeight"
].
as
<
int
>
(),
configNode
[
"inputWidth"
].
as
<
int
>
(),
configNode
[
"inputHeight"
].
as
<
int
>
(),
inputMean, inputStd,
useBGR, fixAspectRatio
inputMean
,
inputStd
,
configNode
[
"useBGR"
].
as
<
bool
>
(),
configNode
[
"fixAspectRatio"
].
as
<
bool
>
()
);
);
builder->setInt8Calibrator(calibrator);
// builder->setInt8Calibrator(calibrator);
builderConfig
->
setInt8Calibrator
(
calibrator
);
}
}
else
{
else
{
LOG_ERROR
<<
"Not imgs for calib int8. "
<<
configNode
[
"calibImgPathFile"
].
as
<
std
::
string
>
();
LOG_ERROR
<<
"Not imgs for calib int8. "
<<
configNode
[
"calibImgPathFile"
].
as
<
std
::
string
>
();
return
false
;
return
false
;
}
}
*/
//
*/
return
false
;
//
return false;
}
}
LOG_INFO
<<
"Begin building engine..."
;
LOG_INFO
<<
"Begin building engine..."
;
...
...
src/libs/inferences/tensorrt/trt_yolov5_infer.cpp
View file @
a4fe9ff5
...
@@ -356,16 +356,25 @@ bool YoloV5TRTInference::BuildEngine(YAML::Node& configNode){
...
@@ -356,16 +356,25 @@ bool YoloV5TRTInference::BuildEngine(YAML::Node& configNode){
if
(
runMode
==
1
){
if
(
runMode
==
1
){
config
->
setFlag
(
BuilderFlag
::
kFP16
);
config
->
setFlag
(
BuilderFlag
::
kFP16
);
}
else
if
(
runMode
==
2
){
}
else
if
(
runMode
==
2
){
LOG_ERROR
<<
"no supported int8"
;
// LOG_ERROR << "no supported int8";
/*LOG_INFO << "Your platform support int8: " << (builder->platformHasFastInt8() ? "true" : "false");
// /*
LOG_INFO
<<
"Your platform support int8: "
<<
(
builder
->
platformHasFastInt8
()
?
"true"
:
"false"
);
assert
(
builder
->
platformHasFastInt8
());
assert
(
builder
->
platformHasFastInt8
());
config->setFlag(BuilderFlag::kINT8);
// config->setFlag(BuilderFlag::kINT8);
#ifdef TRT_8
config
->
setFlag
(
nvinfer1
::
BuilderFlag
::
kINT8
);
#else
builder
->
setInt8Mode
(
true
);
#endif
std
::
vector
<
float
>
inputMean
=
configNode
[
"inputMean"
].
as
<
std
::
vector
<
float
>>
();
std
::
vector
<
float
>
inputStd
=
configNode
[
"inputStd"
].
as
<
std
::
vector
<
float
>>
();
calibrator
=
new
int8EntroyCalibrator
(
configNode
[
"calibImgPathFile"
].
as
<
std
::
string
>
(),
calibrator
=
new
int8EntroyCalibrator
(
configNode
[
"calibImgPathFile"
].
as
<
std
::
string
>
(),
configNode
[
"calibTableCache"
].
as
<
std
::
string
>
(),
configNode
[
"calibTableCache"
].
as
<
std
::
string
>
(),
maxBatchSize, inputWidth, inputHeight, inputMean, inputStd, useBGR);
maxBatchSize
,
inputWidth
,
inputHeight
,
inputMean
,
inputStd
,
configNode
[
"useBGR"
].
as
<
bool
>
(),
configNode
[
"fixAspectRatio"
].
as
<
bool
>
());
config
->
setInt8Calibrator
(
calibrator
);
config
->
setInt8Calibrator
(
calibrator
);
*/
//
*/
return
false
;
//
return false;
}
}
LOG_INFO
<<
"Building engine, please wait for a while..."
;
LOG_INFO
<<
"Building engine, please wait for a while..."
;
...
...
src/libs/trackers/track.cpp
View file @
a4fe9ff5
...
@@ -123,7 +123,7 @@ void Track::update(Track &new_track, int frame_id)
...
@@ -123,7 +123,7 @@ void Track::update(Track &new_track, int frame_id)
// update obj_
// update obj_
this
->
obj_
->
update
(
new_track
.
obj_
);
this
->
obj_
->
update
(
new_track
.
obj_
);
this
->
obj_
->
update
(
tlbr
);
//
this->obj_->update(tlbr);
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment