1 Commits

Author SHA1 Message Date
Francesco Gatti c95c2dbfbc rtinference nstep 2023-08-09 02:28:25 +08:00
9 changed files with 5 additions and 2467 deletions
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
-20
View File
@@ -1,20 +0,0 @@
vesselA
vesselB
vesselC
vesselD
vesselE
vesselF
vesselG
vesselH
obj1
obj2
obj3
obj4
obj5
obj6
obj7
obj8
obj9
obj10
obj11
obj12
-10
View File
@@ -1,10 +0,0 @@
sdbh
sdb
sc
ldb
lc
lgb
sbb
lac
none
none
-10
View File
@@ -1,10 +0,0 @@
vessel_a
vessel_b
vessel_c
vessel_d
vessel_e
vessel_f
vessel_g
USV
none
none
-35
View File
@@ -1,35 +0,0 @@
#include<iostream>
#include<vector>
#include "tkdnn.h"
#include "test.h"
#include "DarknetParser.h"
int main() {
std::string bin_path = "yolo4-mbzirc-objs";
std::vector<std::string> input_bins = {
bin_path + "/layers/input.bin"
};
std::vector<std::string> output_bins = {
bin_path + "/debug/layer139_out.bin",
bin_path + "/debug/layer150_out.bin",
bin_path + "/debug/layer161_out.bin"
};
std::string wgs_path = bin_path + "/layers";
std::string cfg_path = std::string(TKDNN_PATH) + "/tests/darknet/cfg/yolo4-mbzirc-10.cfg";
std::string name_path = std::string(TKDNN_PATH) + "/tests/darknet/names/objs.names";
downloadWeightsifDoNotExist(input_bins[0], bin_path, "https://cloud.hipert.unimore.it/s/BByqxdGNzp38kHx/download");
// parse darknet network
tk::dnn::Network *net = tk::dnn::darknetParser(cfg_path, wgs_path, name_path);
net->print();
//convert network to tensorRT
tk::dnn::NetworkRT *netRT = new tk::dnn::NetworkRT(net, net->getNetworkRTName(bin_path.c_str()));
int ret = testInference(input_bins, output_bins, net, netRT);
net->releaseLayers();
delete net;
netRT->destroy();
delete netRT;
return ret;
}
-35
View File
@@ -1,35 +0,0 @@
#include<iostream>
#include<vector>
#include "tkdnn.h"
#include "test.h"
#include "DarknetParser.h"
int main() {
std::string bin_path = "yolo4-mbzirc-vessel";
std::vector<std::string> input_bins = {
bin_path + "/layers/input.bin"
};
std::vector<std::string> output_bins = {
bin_path + "/debug/layer139_out.bin",
bin_path + "/debug/layer150_out.bin",
bin_path + "/debug/layer161_out.bin"
};
std::string wgs_path = bin_path + "/layers";
std::string cfg_path = std::string(TKDNN_PATH) + "/tests/darknet/cfg/yolo4-mbzirc-10.cfg";
std::string name_path = std::string(TKDNN_PATH) + "/tests/darknet/names/vessels.names";
downloadWeightsifDoNotExist(input_bins[0], bin_path, "https://cloud.hipert.unimore.it/s/76FRPXYqbGarTJi/download");
// parse darknet network
tk::dnn::Network *net = tk::dnn::darknetParser(cfg_path, wgs_path, name_path);
net->print();
//convert network to tensorRT
tk::dnn::NetworkRT *netRT = new tk::dnn::NetworkRT(net, net->getNetworkRTName(bin_path.c_str()));
int ret = testInference(input_bins, output_bins, net, netRT);
net->releaseLayers();
delete net;
netRT->destroy();
delete netRT;
return ret;
}
-35
View File
@@ -1,35 +0,0 @@
#include<iostream>
#include<vector>
#include "tkdnn.h"
#include "test.h"
#include "DarknetParser.h"
int main() {
std::string bin_path = "yolo4-mbzirc";
std::vector<std::string> input_bins = {
bin_path + "/layers/input.bin"
};
std::vector<std::string> output_bins = {
bin_path + "/debug/layer139_out.bin",
bin_path + "/debug/layer150_out.bin",
bin_path + "/debug/layer161_out.bin"
};
std::string wgs_path = bin_path + "/layers";
std::string cfg_path = std::string(TKDNN_PATH) + "/tests/darknet/cfg/yolo4-mbzirc.cfg";
std::string name_path = std::string(TKDNN_PATH) + "/tests/darknet/names/mbzirc.names";
downloadWeightsifDoNotExist(input_bins[0], bin_path, "https://cloud.hipert.unimore.it/s/pNsZxzogfMcKTK4/download");
// parse darknet network
tk::dnn::Network *net = tk::dnn::darknetParser(cfg_path, wgs_path, name_path);
net->print();
//convert network to tensorRT
tk::dnn::NetworkRT *netRT = new tk::dnn::NetworkRT(net, net->getNetworkRTName(bin_path.c_str()));
int ret = testInference(input_bins, output_bins, net, netRT);
net->releaseLayers();
delete net;
netRT->destroy();
delete netRT;
return ret;
}
+5 -1
View File
@@ -13,6 +13,10 @@ int main(int argc, char *argv[]) {
if(argc >2)
BATCH_SIZE = atoi(argv[2]);
int NTEST = 100;
if(argc >3)
NTEST = atoi(argv[3]);
//always same test
srand (0);
@@ -35,7 +39,7 @@ int main(int argc, char *argv[]) {
std::vector<double> stats;
printCenteredTitle(" TENSORRT inference ", '=', 30);
float total_time = 0;
for(int i=0; i<64; i++) {
for(int i=0; (NTEST > 0 ? i<NTEST : true) ; i++) {
// generate input
for(int j=0; j<netRT.input_dim.tot(); j++) {