奇怪的是,MSDN没有关于数据结构的保持属性的信息.所以我一直在假设:
从这个我推断,如果我有一个Dictionary<double, double> foo定义曲线,foo.Keys.ToList()和foo.Values.ToList()将给我一个有序的列表,该曲线的范围和域没有搞乱它?
我正在尝试为一些测试自动化工作开发图像聚焦算法.我选择使用AForge.net,因为它看起来像一个很好的成熟.net友好系统.
不幸的是,我似乎无法从头开始找到有关构建自动对焦算法的信息,所以我给了它最好的尝试:
拍照.应用sobel边缘检测滤波器,生成灰度边缘轮廓.生成直方图并保存标准开发.将相机移近主体一步并拍摄另一张照片.如果标准开发小于前一个,我们将获得更多关注.否则,我们已经超过拍摄照片的最佳距离.
有没有更好的办法?
更新:顺便说一下,这有很大的缺陷.当我超越最佳焦点时,我的"焦点图像"价值继续增长.你期望一个抛物线函数看距离/焦点值,但实际上你会得到一些更对数的东西
更新2:好的,所以我回到了这个,我们正在探索的当前方法给出了一些已知的边缘(好吧,所以我确切地知道图片中的对象是什么),我做了一个手动像素强度比较.随着结果图变得越来越陡峭,我得到了更多关注.一旦核心算法从matlab移植到c#(是的,matlab ..:S),我就会发布代码
更新3:yay最终更新.再次回到这里.最终的代码如下所示:
第1步:从图像列表中获取图像(我通过聚焦点拍摄了一百张照片)
第2步:找到我正在聚焦的物体的边缘(在我的情况下,它是一个总是在同一个地方的矩形物体,所以我裁剪出一个边缘的HIGH和NARROW矩形)
第3步:获取该裁剪图像的HorizontalIntensityStatistics(Aforge.net类).
第4步:获取直方图(灰色,在我的情况下)
步骤5:找到直方图值的导数
第6步:当你的坡度最大时,就是你处于最关注点的时候.
是否可以轻松动态地装饰对象?
例如,假设我有一个List<PointF>.这个列表实际上是正弦函数的图.我想通过这些观点为每个PointF添加一个标志,告知它是否为峰值.
但我不想创建一个新的扩展SpecialPointF或其他什么,它有一个布尔属性.
判断我想要懒惰的一切,但懒惰是多么出色的想法诞生(也是坏主意)
编辑:我会接受拳击解决方案以及你可以提出的任何有趣的黑客.没有什么可以阻止我的衍生.我只是想知道是否有更有趣的方式.
我正在NewRelic中进行一些跟踪,我看到几乎每个请求都包含对'System.Web.Mvc.MvcHandler.ProcessAsyncRequest()'的调用.
此函数调用可能需要300毫秒到100秒(严重的是100秒).我试图搜索msdn文档,但在http://msdn.microsoft.com/en-us/library/system.web.mvc.mvchandler.aspx上没有任何内容
显然,这里有些东西在骗我.
我有一些理论说明为什么这么长时间:
类型推断?我正在使用结构图.
服务器资源问题?
.net版本不兼容某种?
asp.net mvc某种不兼容性?
环境:
.net 4
asp.net mvc 3
专用的vm
假设我有一个需要返回一些整数值的函数.但它也可能失败,我需要知道它什么时候发生.
哪种方式更好?
public int? DoSomethingWonderful()
Run Code Online (Sandbox Code Playgroud)
要么
public bool DoSomethingWonderful(out int parameter)
Run Code Online (Sandbox Code Playgroud)
这可能更像是一个风格问题,但我仍然很好奇人们会采取哪种选择.
编辑:澄清,这段代码与一个黑盒子对话(我们称之为云.不,黑盒子.不,等等.云.是的).我不在乎为什么失败了.我只需要知道我是否有有效值.
我正在使用Dictionary<string, string>作为乐器的配置,对于那些对编程知之甚少的用户来说,能够从Visual Studio中获得自动完成功能会更容易.
在Python中,我可以创建一个Dictionary并使用点运算符访问不同的值.
d = {'name':'Joe', 'mood':'grumpy'}
d.name
d.mood
Run Code Online (Sandbox Code Playgroud)
C#有办法做到这一点吗?
我意识到所有涉及的问题,因为字典只是一个通用集合(如何通用?它只是一个KeyValuePairs列表?有趣的问题).我不打算为此完成它的包装类(我希望它比使用自定义类的显式属性更灵活).
伙计们,
在asp.net项目的designer.cs文件中管理声明生成的规则是什么?
例如,我有
- myfile.resx,
- myfile.aspx,
- myfile.aspx.cs.
这些生成
- myfile.aspx.designer.cs
它定义了像protected global :: system.web.ui.webcontrols.literal blahblah; 为了我的资源.
但是直到我在myfile.aspx中引用某些东西,它才会出现在生成的designer.cs中,即使我在myfile.cs(代码隐藏类)中引用它.
如何在不取得该designer.cs文件的所有权的情况下强行执行此操作?
context:我在我的aspx中有一个someresource.text,我正在构建一些其他资源,这就是为什么它们不会在aspx中明确显示的原因.
我编写了一些 nunit 测试,这些测试已在 win7 上的 nunit 中成功运行,并通过我的 mac 上的 MonoDevelop 成功运行。
我现在想做的是不间断地运行这些测试(或者直到我杀死它)。我看不到任何方法来告诉 MonoDevelop 继续运行,所以我尝试通过命令行来执行此操作。
有没有办法从命令行运行 MonoDevelop 测试工具?我不需要报告(我的测试已经在内部报告),只需每隔几分钟重新触发一次。
如果有一个命令行工具,我可以将它包装在 Fabric 或 shell 脚本中,然后一遍又一遍地运行它......
我在mongodb中有一个非常大的封顶集合。鉴于上限集合结构是可预测的(即,预定义了排序,预定义了内存占用等),是否有更好的方法来使光标插入到最新项目上而不是进行迭代?
换句话说,我现在正在做的是获取集合的大小(n),然后创建一个游标,该游标将skip = n-1设置为集合的末尾。然后,我在光标上进行迭代并处理该集合的所有新添加项。
这种方法的问题在于我的收藏很大。假设有1100万条记录。跳过需要20分钟。这意味着当我的光标开始发射数据时,它落后了20分钟。
也许我在这里问错了问题.
我正在尝试做的事情:多个生产者将动态类别中的数据推送到命名交换中.多个消费者需要从这些动态命名的队列中获取这些数据并对其进行操作.
问题是我看到的所有消费示例都要求消费者/订阅具有特定的队列名称,而我的消费者不知道队列的名称,他们也不需要知道这一点.
我为什么要这样做?两个原因:
我一次可以拥有N个这些动态类别.我希望队列能够平等地为这些类别提供服务.目前我们有一个队列(msmq),它接受所有这些类别并在FIFO中提供它们(这意味着某些类别在一段时间内处于饥饿状态).
能够平等地服务所有类别,而不是fifo,让我想出有趣的QoS(默认情况下,我知道Rabbit将循环服务消息).
所以,回到我的问题(如果它有效):是否可以消耗队列中的消息?
因此,通用视图非常酷,但我感兴趣的是通用模板.
所以,例如,我可以给它一个对象,它只是为我提供它.
或者,如果我给它一个列表,它只会迭代对象并将它们串起来作为ul(或tr,或其他任何它认为必要的).
对于大多数用途,你不需要这个.我只是快速地为朋友扔了一些东西(一个酒吧股票应用程序,如果你必须知道),我不想写模板.
c# ×6
.net ×2
aforge ×1
amqp ×1
asp.net ×1
asp.net-mvc ×1
coding-style ×1
decorator ×1
django ×1
frameworks ×1
iis ×1
mongodb ×1
mono ×1
monodevelop ×1
nunit ×1
pymongo ×1
python ×1
rabbitmq ×1
templating ×1
testing ×1