9 Commits

Author SHA1 Message Date
Dimitrii Lopanov
b8f4ad6d57 Merge pull request #16 from LdDl/issue-15
Issue 15
2021-02-01 08:07:24 +03:00
Dimitrii
40df8cce91 free_network_ptr instead of free_network 2021-01-30 13:57:21 +03:00
Dimitrii
13a0697585 remove sleep 2021-01-28 14:26:52 +03:00
Dimitrii
29e4d0d8bb clean 2021-01-28 14:20:38 +03:00
Dimitrii
165e59aaf3 remove defer for image 2021-01-28 14:20:08 +03:00
Dimitrii
81223ac67d start solving issue 2021-01-28 13:43:35 +03:00
Dimitrii Lopanov
7cbe2f50a7 load file 2020-10-16 13:20:22 +03:00
Dimitrii Lopanov
6a381223fa provide example picture 2020-10-16 13:18:39 +03:00
Dimitrii Lopanov
a039e75b22 Merge pull request #14 from LdDl/examples
Examples
2020-10-16 12:55:53 +03:00
6 changed files with 9 additions and 8 deletions

1
.gitignore vendored
View File

@@ -1,5 +1,4 @@
example/main
example/sample.jpg
example/coco.names
example/yolov3.cfg
example/yolov3.weights

View File

@@ -2,7 +2,7 @@
.PHONY: download build clean
# Latest battletested AlexeyAB version of Darknet commit
LATEST_COMMIT?=d65909fbea471d06e52a2e4a41132380dc2edaa6
LATEST_COMMIT?=f056fc3b6a11528fa0522a468eca1e909b7004b7
# Temporary folder for building Darknet
TMP_DIR?=/tmp/

View File

@@ -9,7 +9,6 @@ import (
"log"
"math"
"os"
darknet "github.com/LdDl/go-darknet"
"github.com/disintegration/imaging"
)
@@ -61,13 +60,13 @@ func main() {
if err != nil {
panic(err.Error())
}
defer imgDarknet.Close()
dr, err := n.Detect(imgDarknet)
if err != nil {
printError(err)
return
}
imgDarknet.Close()
log.Println("Network-only time taken:", dr.NetworkOnlyTimeTaken)
log.Println("Overall time taken:", dr.OverallTimeTaken, len(dr.Detections))
@@ -92,6 +91,8 @@ func main() {
// }
}
}
n.Close()
}
func imageToBytes(img image.Image) ([]byte, error) {

BIN
example/sample.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

View File

@@ -14,7 +14,8 @@ struct network_box_result perform_network_detect(network *n, image *img, int cla
sized = resize_image(*img, n->w, n->h);
}
struct network_box_result result = { NULL };
network_predict(*n, sized.data);
// mleak at network_predict(), get_network_boxes() and network_predict_ptr()?
network_predict_ptr(n, sized.data);
int nboxes = 0;
result.detections = get_network_boxes(n, img->w, img->h, thresh, hier_thresh, 0, 1, &result.detections_len, letter_box);
if (nms) {

View File

@@ -58,7 +58,7 @@ func (n *YOLONetwork) Close() error {
if n.cNet == nil {
return errNetworkNotInit
}
C.free_network(*n.cNet)
C.free_network_ptr(n.cNet)
n.cNet = nil
return nil
}
@@ -80,4 +80,4 @@ func (n *YOLONetwork) Detect(img *DarknetImage) (*DetectionResult, error) {
OverallTimeTaken: endTimeOverall.Sub(startTime),
}
return &out, nil
}
}