小编Ala*_*lan的帖子

限制谷歌视觉中的检测区域,文本识别

我一整天都在寻找解决方案。我已经检查了几个关于我的问题的线程。

但这对我没有多大帮助。基本上我希望相机预览是全屏的,但文本只能在屏幕中央被识别,在那里绘制了一个矩形。

我正在使用的技术:

  • 用于光学字符识别 (OCR) 的 Google Mobile Vision API
  • 依赖: play-services-vision

我目前的状态: 我创建了一个 BoxDetector 类:

public class BoxDetector extends Detector {
    private Detector mDelegate;
    private int mBoxWidth, mBoxHeight;

    public BoxDetector(Detector delegate, int boxWidth, int boxHeight) {
        mDelegate = delegate;
        mBoxWidth = boxWidth;
        mBoxHeight = boxHeight;
    }

    public SparseArray detect(Frame frame) {
        int width = frame.getMetadata().getWidth();
        int height = frame.getMetadata().getHeight();
        int right = (width / 2) + (mBoxHeight / 2);
        int left = (width / 2) - …
Run Code Online (Sandbox Code Playgroud)

java android android-camera google-vision

15
推荐指数
1
解决办法
2814
查看次数

检查字符串是否确实包含与Java中给定字符不同的字符

我有以下修复程序charset

大写和小写

A-Z,az

号码

0-9

特殊字符

Ñ,É,ñ,à,@,£,$,¥,è,é,ù,ì,ò,_,!,“,#,%,&,',(,),*,+,,, -,。,/,:,;,<,=,>,?,§,`,SPACE,CR,LF,€,[,],{,|,},^,〜,\,ß,Ä, Ö,Ü,ä,ö,ü

我尝试使用该库,Guava但我的String匹配为非ASCII唯一字符串:

if(!CharMatcher.ascii().matchesAllOf(myString)){
    //String doesn't match        
}  
Run Code Online (Sandbox Code Playgroud)

我的输入字符串是:

 smsBodyBlock.setBodyContent("A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, Ä, Ö, Ü,a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, ä, ö, ü,0, …
Run Code Online (Sandbox Code Playgroud)

java ascii guava

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

为什么我们可以将整数赋给 char 变量

我随机在 StackOverflow 上冲浪。看到一个问题我顿时一头雾水。为什么我们可以将整数值赋给 char 变量?

代码片段

#include <stdio.h>
int main()
{
    char c = 130;
    unsigned char f = 130;

    printf("c = %d\nf = %d\n",c,f);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出:

c = -126
f = 130
Run Code Online (Sandbox Code Playgroud)

我一直认为值必须分配给正确的类型标识符,为什么我们可以这样做?

c

0
推荐指数
1
解决办法
1475
查看次数

在Java 8中无法替换字符串的空格字符

我要从vCard("*.vcf"文件)中过滤特定容器.我过滤包含子串Photo;的行(如果匹配的话),直到特定的String ==保存在我的imageEncodingString中.不知怎的,我如果想更换的空格imageEncoding""没有被替换.

"容器"的示例:

PHOTO;ENCODING=BASE64;JPEG:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAIBAQEBAQIBAQE
 CAgICAgQDAgICAgUEBAMEBgUGBgYFBgYGBwkIBgcJBwYGCAsICQoKCgoKBggLDAsKDAkKCgr/==
Run Code Online (Sandbox Code Playgroud)

代码段:

else if(line.contains("PHOTO;")){
                String imageEncoding = line;

                while(true){
                    line = reader.readLine();
                    if (line.contains("==")){
                        imageEncoding = imageEncoding+line;
                        break;
                    }
                    imageEncoding = imageEncoding+line;
                }
                //imageEncoding.replaceAll(" ","");
                imageEncoding.replaceAll("\\s","");
                System.out.println(imageEncoding);

            }
Run Code Online (Sandbox Code Playgroud)

用""输出:

PHOTO;ENCODING=BASE64;JPEG:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAIBAQEBAQIBAQE
 CAgICAgQDAgICAgUEBAMEBgUGBgYFBgYGBwkIBgcJBwYGCAsICQoKCgoKBggLDAsKDAkKCgr/==
Run Code Online (Sandbox Code Playgroud)

用\ s输出:

PHOTO;ENCODING=BASE64;JPEG:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAIBAQEBAQIBAQE
 CAgICAgQDAgICAgUEBAMEBgUGBgYFBgYGBwkIBgcJBwYGCAsICQoKCgoKBggLDAsKDAkKCgr/==
Run Code Online (Sandbox Code Playgroud)

应该是什么:

PHOTO;ENCODING=BASE64;JPEG:/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAIBAQEBAQIBAQE
CAgICAgQDAgICAgUEBAMEBgUGBgYFBgYGBwkIBgcJBwYGCAsICQoKCgoKBggLDAsKDAkKCgr/==
Run Code Online (Sandbox Code Playgroud)

字符串的行数更长,这只是一个片段.我试图替换,\\s但也没有用.

java replace

-1
推荐指数
1
解决办法
77
查看次数

标签 统计

java ×3

android ×1

android-camera ×1

ascii ×1

c ×1

google-vision ×1

guava ×1

replace ×1