Yolo相关
javascript
//Node版引擎导入方式
import core from 'cheese-node';
//JS版引擎导入方式
const core = require('cheese-js');
YoloV8图片检测: detect(bitmap: Bitmap,path: string, list: Array<String>, cpugpu: number): Array<Yolov8Ncnn["Obj"]>
✅
扩展属性:
- 检测个数:
length
- 第一个的物体标签:
[0].label
- 第一个的物体中心x:
[0].x
- 第一个的物体中心y:
[0].y
- 第一个的物体宽:
[0].w
- 第一个的物体高:
[0].h
- 第一个的物体置信度:
[0].prob
参数:
- ⭐
bitmap
(bitmap):bit对象 - ⭐
string
(path):模型路径 - ⭐
string[]
(labellist):标签列表 - ⭐
number
(cpugpu):工作模式选择(CPUGPU=0/1)
返回值:
- 🟢
Array<Yolov8Ncnn["Obj"]>
:Array<Yolov8Ncnn["Obj"]>结构体对象 - 🔴null
用法示例:
javascript
//训练好的推理模型下载:https://pan.baidu.com/s/1n9RUCE8jmOaf0PpGdpjr7A?pwd=1234 (其他 >Ai模型 >yolov8模型)
const yolo = core.yolo;
const converters = core.converters;
let tabl = [
"person", "bicycle", "car", "motorcycle", "airplane", "bus", "train", "truck", "boat", "traffic light",
"fire hydrant", "stop sign", "parking meter", "bench", "bird", "cat", "dog", "horse", "sheep", "cow",
"elephant", "bear", "zebra", "giraffe", "backpack", "umbrella", "handbag", "tie", "suitcase", "frisbee",
"skis", "snowboard", "sports ball", "kite", "baseball bat", "baseball glove", "skateboard", "surfboard",
"tennis racket", "bottle", "wine glass", "cup", "fork", "knife", "spoon", "bowl", "banana", "apple",
"sandwich", "orange", "broccoli", "carrot", "hot dog", "pizza", "donut", "cake", "chair", "couch",
"potted plant", "bed", "dining table", "toilet", "tv", "laptop", "mouse", "remote", "keyboard", "cell phone",
"microwave", "oven", "toaster", "sink", "refrigerator", "book", "clock", "vase", "scissors", "teddy bear",
"hair drier", "toothbrush"
];
try {
var bit = converters.streamToBitmap(converters.assetsToStream("image.png"))
var v8obej = yolo.detect(bit,os.ASSETS_DIRECTORY.path+"/yolov8t/model.ncnn", tabl, 0)
console.log(v8obej[0].label)
console.log(yolo.getSpeed())
files.save(yolo.draw(v8obej, bit),"/storage/emulated/0/Pictures/4.png")
} catch (e) {
console.log(e);
}
YoloV8检测速度: getSpeed(): number
✅
返回值:
- 🟢
number
:本次的检测速度 (ms) - 🔴
number
:0.0
用法示例:
javascript
const yolo = core.yolo;
const converters = core.converters;
let tabl = [
"person", "bicycle", "car", "motorcycle", "airplane", "bus", "train", "truck", "boat", "traffic light",
"fire hydrant", "stop sign", "parking meter", "bench", "bird", "cat", "dog", "horse", "sheep", "cow",
"elephant", "bear", "zebra", "giraffe", "backpack", "umbrella", "handbag", "tie", "suitcase", "frisbee",
"skis", "snowboard", "sports ball", "kite", "baseball bat", "baseball glove", "skateboard", "surfboard",
"tennis racket", "bottle", "wine glass", "cup", "fork", "knife", "spoon", "bowl", "banana", "apple",
"sandwich", "orange", "broccoli", "carrot", "hot dog", "pizza", "donut", "cake", "chair", "couch",
"potted plant", "bed", "dining table", "toilet", "tv", "laptop", "mouse", "remote", "keyboard", "cell phone",
"microwave", "oven", "toaster", "sink", "refrigerator", "book", "clock", "vase", "scissors", "teddy bear",
"hair drier", "toothbrush"
];
try {
var bit = converters.streamToBitmap(converters.assetsToStream("image.png"))
var v8obej = yolo.detect(bit,os.ASSETS_DIRECTORY.path+"/yolov8t/model.ncnn", tabl, 0)
console.log(v8obej[0].label)
console.log(yolo.getSpeed())
files.save(yolo.draw(v8obej, bit),"/storage/emulated/0/Pictures/4.png")
} catch (e) {
console.log(e);
}
YoloV8 绘制检测框信息: draw(obj:Array<any>,bit:Bitmap): Bitmap
✅
参数:
- ⭐
V8Obj[]
(objects):V8Obj[]对象 - ⭐
bit
(bit):bit对象
返回值:
- 🟢
bit
:bit对象 - 🔴null
用法示例:
javascript
const yolo = core.yolo;
const converters = core.converters;
let tabl = [
"person", "bicycle", "car", "motorcycle", "airplane", "bus", "train", "truck", "boat", "traffic light",
"fire hydrant", "stop sign", "parking meter", "bench", "bird", "cat", "dog", "horse", "sheep", "cow",
"elephant", "bear", "zebra", "giraffe", "backpack", "umbrella", "handbag", "tie", "suitcase", "frisbee",
"skis", "snowboard", "sports ball", "kite", "baseball bat", "baseball glove", "skateboard", "surfboard",
"tennis racket", "bottle", "wine glass", "cup", "fork", "knife", "spoon", "bowl", "banana", "apple",
"sandwich", "orange", "broccoli", "carrot", "hot dog", "pizza", "donut", "cake", "chair", "couch",
"potted plant", "bed", "dining table", "toilet", "tv", "laptop", "mouse", "remote", "keyboard", "cell phone",
"microwave", "oven", "toaster", "sink", "refrigerator", "book", "clock", "vase", "scissors", "teddy bear",
"hair drier", "toothbrush"
];
try {
var bit = converters.streamToBitmap(converters.assetsToStream("image.png"))
var v8obej = yolo.detect(bit,os.ASSETS_DIRECTORY.path+"/yolov8t/model.ncnn", tabl, 0)
console.log(v8obej[0].label)
console.log(yolo.getSpeed())
files.save(yolo.draw(v8obej, bit),"/storage/emulated/0/Pictures/4.png")
} catch (e) {
console.log(e);
}