小编Cas*_*hew的帖子

检测图像中线条的好方法?

我写了一些代码,使用OpenCV库来检测草地上画的白线.我需要某人对我使用的方法的看法(因为我确信有比我更好的方法).此外,我得到的结果不如我预期的好,因为图像中的微小变化需要调整参数(我需要对固定参数进行操作).

到目前为止我的方法:

  1. 从网络摄像头抓取图像(显然变成灰度)
  2. 通过阈值过滤器运行它(使用THRESH_TO_ZERO模式,它将任何像素都归零阈值以下).
  3. 模糊图像
  4. 通过侵蚀过滤器运行它
  5. 通过Canny边缘探测器运行它
  6. 最后,拍摄此处理后的图像并使用概率Hough变换HoughLinesP查找线条

我应该更改过滤器的顺序吗?

PS我不太关心处理能力; 我正在GPU B上运行HoughLinesP-)

另外,这是一个示例图像: 原始图像

我得到的结果:与canny 与canny 没有canny(略微调整参数) 这次没精算

任何帮助或指导将不胜感激!我只是不知道如何改进它!

更新 根据所选答案使用非常快速的骨架实现(使用TONS of blur)后,我得到了: 有用!

opencv image-processing edge-detection feature-detection hough-transform

27
推荐指数
3
解决办法
3万
查看次数

在不使用reloadData的情况下实时调整UITableViewCell的大小?

首先,请原谅我,如果答案已经存在(我老实说,我已经工作并且搜索了大约两周).

现在,情况如下:

我有UITextView作为的一个子视图UITableViewCellUITableView.这UITextView是第一个响应者(当用户键入时).

我已经设置了(通过委托协议方法),以便在每个键入的字符之后,rowHeight重新计算单元格(正确地并在tableViews委托协议中为rowHeight).到目前为止一切都很好.

然后,我希望重新加载(或刷新,无论术语是什么)该单元格而不将其子视图UITextView作为第一响应者重新签名.

解决问题的一个不令人满意的解决方案:

我可以使用[tableView reloadData],然后[textView becomeFirstResponder]模拟这种(让用户甚至不会注意到的TextView被重新加载)和rowHeight的是完美的,但是这已经引起了我很多的问题(特别是确保光标不每次用户键入一个字符时都不会跳到最后,并且由于textView重新签名而自动更正强制执行其建议.

有没有办法重绘或调整大小UITableViewCell(以动态更改它rowHeight)而不会导致其任何子视图作为第一响应者辞职?

iphone uitableview uitextview resignfirstresponder

8
推荐指数
1
解决办法
8129
查看次数

如何在Cocoa中获取字符的int ASCII值?

如何将ASCII值作为Cocoa中字符的int?我在python中找到了这样做的答案,但我需要知道如何在Cocoa中执行此操作.(我仍然是可可的菜鸟).
Python方法:
使用函数ord()如下:

>>> ord('a')  
97
Run Code Online (Sandbox Code Playgroud)

而且反过来chr():

>>> chr(97)  
'a'
Run Code Online (Sandbox Code Playgroud)

我怎么在Cocoa中做到这一点?

c cocoa ascii objective-c

6
推荐指数
1
解决办法
4498
查看次数

如何在heightForRowAtIndexPath中检查UITableViewCell是否为nil(初始化)?

我有一个UITableViewCell我需要调整大小的用户类型.该单元格具有UITextView子视图.

在heightForRowAtIndexPath里面,我需要检查当前单元格是否为零或已初始化.

如果它为零,我根据字符串属性中的文本计算其高度.

如果它不是nil(即初始化),我希望它检索单元格子视图的text属性(我知道如果单元格被初始化,我可以访问它).

如何检查UITableViewCell是否为零heightForRowAtIndexPath:我试过了

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
    if ([overviewTableView cellForRowAtIndexPath:indexPath] !=nil)
    {    NSLog(@"YEEHAW!");
    }
}
Run Code Online (Sandbox Code Playgroud)

但它会导致错误(可能是因为cellForRowAtIndexPath:期望细胞被初始化,而不是nil).此外,我注意到cellForRowAtIndexPath:调用heightForRowAtIndexPath:(导致递归循环).

我在网上看到了很多"替代品",但我只是想知道这种方法是否有用(或者根本没有效果).

提前致谢!

iphone cocoa-touch uitableview ios

2
推荐指数
1
解决办法
482
查看次数