[英]Is there any built in algorithms or library available in C# to calculate the probability functions?
[英]Is there any available object detecting/recognition C# library?
我正在做一个需要重新调整现实世界中对象的项目(例如水果,椅子,笔记本,桌子,扬声器……等等)
我想问的第一件事是“有可能吗?”,我目前是信息技术大学的三年级学生。
第二个是“是否有可用的C#库可以帮助我实现这一目标?”
有什么解决办法吗? 如果有人可以回答我的问题,我将不胜感激!
一般来说,这是一个非常困难的任务。 请记住,要设计出始终能够检测到物体并且不会产生任何错误(错误警报)的完美系统目前是不可能的。
您可以通过使用OpenCV的潜在SVM检测器开始: http : //docs.opencv.org/modules/objdetect/doc/latent_svm.html
但是,训练新模型是有问题的。 您还可以使用OpenCV HOG描述符和检测器: http : //docs.opencv.org/modules/gpu/doc/object_detection.html
或级联分类器: http : //docs.opencv.org/modules/objdetect/doc/cascade_classification.html
您应该将自己限制为预定义的设置对象,并为每个对象类训练一个检测器。 如果您可以将自己限制在OpenCV潜在svm当前支持的类集中,那么实际上就不难了。 但是请记住,始终会丢失检测和错误警报。
您可以使用Alturos.Yolo,它是yolo( darknet )的ac#包装器。 根据预训练的模型,您可以检测到很多不同的对象( Yolo9000的训练对象列表 )。 如果需要更多种类,还可以训练自定义对象。
Nuget包
PM> install-package Alturos.Yolo
例
var configurationDetector = new ConfigurationDetector();
var config = configurationDetector.Detect();
//using (var yoloWrapper = new YoloWrapper("yolov2-tiny-voc.cfg", "yolov2-tiny-voc.weights", "voc.names"))
using (var yoloWrapper = new YoloWrapper(config))
{
var items = yoloWrapper.Detect(@"image.jpg");
//items[0].Type -> "Person, Car, ..."
//items[0].Confidence -> 0.0 (low) -> 1.0 (high)
//items[0].X -> bounding box
//items[0].Y -> bounding box
//items[0].Width -> bounding box
//items[0].Height -> bounding box
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.