在后台服务中获取服务实例时,我观察到一些特殊行为。
我有一个服务,其中一个属性具有默认值。对于此服务的前两个实例,它拥有预期的默认值。在第三次实例化时,它始终具有未定义的值。
public class MyWorker : BackgroundService
{
private readonly IServiceScopeFactory _scopeFactory;
public MyWorker(IServiceScopeFactory scopeFactory)
{
_scopeFactory = scopeFactory;
}
protected override async Task ExecuteAsync(CancellationToken stoppingToken)
{
for (int i = 0; i < 3; i++)
{
using (var scope = _scopeFactory.CreateScope())
{
var myService = scope.ServiceProvider.GetRequiredService<MyService>();
...
}
await Task.Delay(100, stoppingToken);
}
}
}
Run Code Online (Sandbox Code Playgroud)
public class MyService
{
private readonly MyEnum _myEnum;
public MyService(MyEnum myEnum = MyEnum.ValueA)
{
_myEnum = myEnum;
Console.WriteLine("Value: {0}", myEnum);
}
}
Run Code Online (Sandbox Code Playgroud)
public class Startup …Run Code Online (Sandbox Code Playgroud) 我有一组几千个图像,并且对于每个图像,我提取了一组SIFT特征描述符(当前绑定到每个图像200个).
我需要形成每个图像之间距离的完整图表.也就是说,我需要通过一些指标来计算每个图像到每个其他图像的距离.
到目前为止,我已经尝试使用FLANN来计算两个节点之间的20个最近的相邻描述符,然后计算每个匹配描述符之间的平均距离.不幸的是,这个过程耗时太长而无法执行.
有没有办法让我更有效地比较这些图像的描述符?
opencv image-processing computer-vision sift feature-descriptor