我有一张图片,我用我的程序详细说明,以获得坐标列表.
在图像中表示有一个矩阵.在一个理想的测试中,我只得到矩阵每个方格的十六个中心点.但在实际测试中,我需要相当多的噪点.
我想使用一种算法从坐标列表中推断出来,该坐标由最能代表矩阵的16个坐标组成.
矩阵可以具有任何纵横比(在一个范围之间)并且可以导致稍微旋转.但总是一个4x4矩阵.矩阵并不总是出现在图像中,但不是问题,我只需要最佳匹配.当然,创始点总是超过16(或我跳过)
成立点的例子:
要求结果的示例:
如果有人能建议我这样做的首选方法会很棒.
我正在考虑点之间的欧氏距离.
For each point in the list:
1. calculate the euclidean distance (D) with the others
2. filter that points that D * 3 > image.widht (or height)
3. see if it have at least 2 point at the same (more or less) distance,
if not skip
4. if yes put the point in a list and for each same-distance founded points: go to 2nd step.
Run Code Online (Sandbox Code Playgroud)
最后,如果我在列表中有16个点,这可能是一个矩阵.
还有更好的建议吗?
谢谢
我开发了一个图像皮肤检测应用程序
但是我的相机存在问题,试图补偿光线并且结果图像很差,在大多数情况下,我对图像有冷或热效果.当我使用Photoshop时,有AutoTone功能可以规范化图像并减少此问题.
使用aforge我想使用HistogramEqualization()过滤器,但结果非常糟糕:
// create filter
HistogramEqualization filter = new HistogramEqualization( );
// process image
filter.ApplyInPlace( sourceImage );
Run Code Online (Sandbox Code Playgroud)
所以我的问题是:在Accord或Aforge中有一个函数可以获得与Photoshop的自动调色板相同的结果吗?如果没有,有一些库或脚本可以做到这一点?
谢谢你们.
这个问题让我抓狂!我已经阅读了有关Stack Overflow的所有问题,但我仍然陷入困境.
我的as3程序工作得很好,但是当我完成它并将它放在服务器上时,它开始请求这个着名的策略文件.
AS3脚本:
socket.addEventListener(Event.CONNECT, onConnect);
socket.addEventListener(Event.CLOSE, onClose);
socket.addEventListener(IOErrorEvent.IO_ERROR, onError);
socket.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onSecError);
socket.addEventListener(ProgressEvent.SOCKET_DATA, onResponse);
socket.connect( MYHOST, 4242 );
Run Code Online (Sandbox Code Playgroud)
C#服务器代码:
TcpListener serverSocket = new TcpListener(4242);
TcpClient clientSocket = default(TcpClient);
serverSocket.Start();
clientSocket = serverSocket.AcceptTcpClient();
NetworkStream networkStream = clientSocket.GetStream();
StreamReader read = new StreamReader(networkStream, Encoding.UTF8);
StreamWriter write = new StreamWriter(networkStream, Encoding.UTF8);
response = read.ReadLine();
if (response.Contains("policy"))
{
write.Write("<?xml version=\"1.0\"?><cross-domain-policy><allow-access-from domain=\"*\" to-ports=\"*\" /></cross-domain-policy>\0");
write.Flush();
clientSocket.Close();
return;
}
Run Code Online (Sandbox Code Playgroud)
因此,当AS3在默认端口843(或类似的东西)上找不到策略时,它直接在与连接相同的套接字上询问.我的C#代码看到请求和回复,之后AS3脚本关闭连接(这是正常的),但它永远不会重新连接.
我试过在connect()之前把它放在AS3中:
Security.loadPolicyFile( "xmlsocket://myhost.com:4242");
Run Code Online (Sandbox Code Playgroud)
但是当我这样做时,connect()
它就会卡住并且永远不会请求策略文件.关闭AS3应用程序后,我的服务器会看到请求,但连接已关闭.就像客户忘记做同花顺一样.
有人能告诉我如何正确解决这个问题吗?
我有一个充满值(0-255)的int数组,我需要提取两个索引.
要找到的索引将代表我想要关注的兴趣区域.
该区域的值总是高于其他区域,但有时差异非常小.
像这个例子:
我的兴趣领域是这样的:
我目前的方法是获得最大值和平均值.然后我会得到:
但有时候,就像在这种情况下我的方法得到垃圾部分.(第五个"列",右侧)
任何人都可以提出更好的方法?
注意:感兴趣区域总是有4个"列",就像示例图像一样
我需要将一个启动脚本放到我的CentOS6服务器上.
我看到我需要一个包含开始 - 停止案例的脚本.但是我有一个问题要做,而且没有如何把这个脚本启动.
任何人都可以说我如何添加它?
该脚本必须运行一个运行jar文件的简单命令:
java -jar FileName.jar
Run Code Online (Sandbox Code Playgroud) 当我尝试注册Android令牌设备时,我发现了parse.com的错误,用于推送通知.
这是我的要求:
{
"deviceType":"android",
"deviceToken":"我的设备ANDROID TOKEN",
"installationId":"acef4da2-98e8-484f-9688-cbb1c6a27c8e",
"频道":[""]
}
我收到了这个回复:
{
"代码":114,
"错误":"可能没有为deviceType android设置deviceToken"
}
有人知道我为什么会收到这个错误吗?