跪求大神帮忙用opencv识别出分辨力板中的级数

dreastarain 2017-09-26 03:30:20
加精


用opencv对这图像进行识别,比如说第10级,每个小正方形里都能识别出条数,但11级不行,那就算能识别到第10级。有没有大神能帮下小弟,小弟感激不尽,试了好多想法都不行啊
...全文
6573 82 打赏 收藏 转发到动态 举报
写回复
用AI写文章
82 条回复
切换为时间正序
请发表友善的回复…
发表回复
dreastarain 2017-11-02
  • 打赏
  • 举报
回复
又回到起点了,如何分割图像成了一个问题,觉得数像素好像误差有点大
qq_35605615 2017-11-02
  • 打赏
  • 举报
回复
回复的积分
dreastarain 2017-10-23
  • 打赏
  • 举报
回复
引用 73 楼 gefieder 的回复:
枕形 + 梯形么?
用张氏标定法应该可以直接矫正了吧
dreastarain 2017-10-23
  • 打赏
  • 举报
回复
引用 76 楼 sinat_40665049 的回复:
halcon确实好用,就是许可麻烦一点
halcon用起来么有opencv顺手,也不太会。
Dobzhansky 2017-10-23
  • 打赏
  • 举报
回复
围观
nettman 2017-10-22
  • 打赏
  • 举报
回复
Old_Dog007 2017-10-17
  • 打赏
  • 举报
回复
halcon确实好用,就是许可麻烦一点
  • 打赏
  • 举报
回复
hugh_z 2017-10-11
  • 打赏
  • 举报
回复
枕形 + 梯形么?
weixin_40574718 2017-10-11
  • 打赏
  • 举报
回复
支持···············
weixin_40580270 2017-10-11
  • 打赏
  • 举报
回复
冒泡,我是新手。
赵4老师 2017-10-10
  • 打赏
  • 举报
回复
你不需要编程判断是哪种畸变,你只需要用人眼判断出是哪种畸变。
dreastarain 2017-10-10
  • 打赏
  • 举报
回复
引用 69 楼 zhao4zhong1 的回复:
https://www.baidu.com/s?wd=镜头畸变 现代中国人的能力差别很大程度上体现在会不会合理高效地使用百度上。 百度搜相关关键字。
老师,那些都是修正畸变的啊,我百度过,好像没有判断是哪一种畸变的
赵4老师 2017-10-09
  • 打赏
  • 举报
回复
引用 61 楼 dreastarain 的回复:
[quote=引用 60 楼 zhao4zhong1 的回复:] [quote=引用 59 楼 dreastarain 的回复:] [quote=引用 58 楼 zhao4zhong1 的回复:] “不管在什么距离” 吹,继续吹!
肯定是一定距离之内啊,怎么可能不限。我这意思是比如在你距离20cm和25cm处都得识别出来[/quote] 那你不会先判断距离20cm还是25cm,再分别识别?[/quote] 但是人家要1cm 识别一次,我还得1cm做一个模板啊?肯定不现实啊。[/quote] 每1cm识别一次,就算从1cm到100cm也就才100个模板,怎么就不现实了?! 最不济你还可以借用代码生成技术,自动生成100个模板啊! 代码生成技术参考下面:
//codegen.c
// 输入一组字符串,比如
// aa ss ddd dd 33 dd
// 然后自动生成一个函数 int A(const char*);
// 实现A("aa")返回0  A("ss")返回1 依次类推
#include <stdio.h>
int main(int argc,char **argv) {
    int i;
    if (argc<2) {
        printf("%s p1 [p2 ...] [>result.c]\nGenerate code int A(const char *a); 0==A(\"p1\") 1==A(\"p2\") ...",argv[0]);
        return 1;
    }
    //printf("#include <string.h>\n");
    printf("int A(const char *a) {\n");
    for (i=0;i<argc-1;i++) {
        printf("    if (0==strcmp(a,\"%s\")) return %d;\n",argv[i+1],i);
    }
    printf("    return -1;\n");
    printf("}\n");
    return 0;
}
//C:\test\Debug>codegen.exe
//codegen.exe p1 [p2 ...] [>result.c]
//Generate code int A(const char *a); 0==A("p1") 1==A("p2") ...
//C:\test\Debug>codegen.exe aa ss ddd dd 33 dd
//int A(const char *a) {
//    if (0==strcmp(a,"aa")) return 0;
//    if (0==strcmp(a,"ss")) return 1;
//    if (0==strcmp(a,"ddd")) return 2;
//    if (0==strcmp(a,"dd")) return 3;
//    if (0==strcmp(a,"33")) return 4;
//    if (0==strcmp(a,"dd")) return 5;
//    return -1;
//}
//
//c:\test\Debug>codegen.exe aa ss ddd dd 33 dd >result.c
//
//c:\test\Debug>type result.c
//int A(const char *a) {
//    if (0==strcmp(a,"aa")) return 0;
//    if (0==strcmp(a,"ss")) return 1;
//    if (0==strcmp(a,"ddd")) return 2;
//    if (0==strcmp(a,"dd")) return 3;
//    if (0==strcmp(a,"33")) return 4;
//    if (0==strcmp(a,"dd")) return 5;
//    return -1;
//}
//
赵4老师 2017-10-09
  • 打赏
  • 举报
回复
引用 59 楼 dreastarain 的回复:
[quote=引用 58 楼 zhao4zhong1 的回复:] “不管在什么距离” 吹,继续吹!
肯定是一定距离之内啊,怎么可能不限。我这意思是比如在你距离20cm和25cm处都得识别出来[/quote] 那你不会先判断距离20cm还是25cm,再分别识别?
dreastarain 2017-10-09
  • 打赏
  • 举报
回复
引用 60 楼 zhao4zhong1 的回复:
[quote=引用 59 楼 dreastarain 的回复:] [quote=引用 58 楼 zhao4zhong1 的回复:] “不管在什么距离” 吹,继续吹!
肯定是一定距离之内啊,怎么可能不限。我这意思是比如在你距离20cm和25cm处都得识别出来[/quote] 那你不会先判断距离20cm还是25cm,再分别识别?[/quote] 但是人家要1cm 识别一次,我还得1cm做一个模板啊?肯定不现实啊。
dreastarain 2017-10-09
  • 打赏
  • 举报
回复
引用 58 楼 zhao4zhong1 的回复:
“不管在什么距离” 吹,继续吹!
肯定是一定距离之内啊,怎么可能不限。我这意思是比如在你距离20cm和25cm处都得识别出来
赵4老师 2017-10-09
  • 打赏
  • 举报
回复
https://www.baidu.com/s?wd=镜头畸变 现代中国人的能力差别很大程度上体现在会不会合理高效地使用百度上。 百度搜相关关键字。
dreastarain 2017-10-09
  • 打赏
  • 举报
回复
引用 67 楼 zhao4zhong1 的回复:
《学习OpenCV(中文版)》279页 轮廓的匹配
老师,那个中心找着了,还是老师牛。我还有一个小问题,有没有办法从图片上看出世什么畸变?我在发帖时候的那张图片,我不知道是哪种畸变,所以不知道如何处理,有没有办法找出畸变?
赵4老师 2017-10-09
  • 打赏
  • 举报
回复
《学习OpenCV(中文版)》279页 轮廓的匹配
加载更多回复(61)

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧