标签: decoding

如何将decode_batch_predictions()方法添加到Keras Captcha OCR模型中?

当前的Keras Captcha OCR 模型返回 CTC 编码输出,需要推理后解码。

要对其进行解码,需要在推理之后作为单独的步骤运行解码实用函数。

preds = prediction_model.predict(batch_images)
pred_texts = decode_batch_predictions(preds)
Run Code Online (Sandbox Code Playgroud)

解码的效用函数使用keras.backend.ctc_decode,而 又使用贪婪解码器或波束搜索解码器。

# A utility function to decode the output of the network
def decode_batch_predictions(pred):
    input_len = np.ones(pred.shape[0]) * pred.shape[1]
    # Use greedy search. For complex tasks, you can use beam search
    results = keras.backend.ctc_decode(pred, input_length=input_len, greedy=True)[0][0][
        :, :max_length
    ]
    # Iterate over the results and get back the text
    output_text = []
    for res in results:
        res = tf.strings.reduce_join(num_to_char(res)).numpy().decode("utf-8")
        output_text.append(res)
    return output_text …
Run Code Online (Sandbox Code Playgroud)

ocr decoding keras ctc

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

这是什么类型的BarCode?

我正在开始编写应用程序的过程,其中一部分是解码条形码,但是我的开始不好.我不是条形码专家,这不是常见的条形码类型,所以我遇到了麻烦.我无法弄清楚这是什么类型的条形码,我必须解码.

我查看了维基百科和其他一些网站,其中包含不同类型条形码的视觉描述(以及如何识别它们),但我无法识别它.请注意,我已经尝试了几个免费条形码解码程序,他们都无法解码.

这是条形码的图片:

替代文字http://www.shrani.si/f/2B/4p/4UCVyP72/barcode.jpg

我希望你们中的一个人能认出来.此外,如果有人之前已经使用过它并且知道可以解码它们的库(从图像中),我很想听听它们.

我非常感谢我能收到的任何其他指示.谢谢.

c# barcode decoding

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

使用Java中的一组固定字母将long编码/解码为字符串

给定一组任意字母

String range = "0123456789abcdefghijklmnopABCD#";
Run Code Online (Sandbox Code Playgroud)

我正在寻找2种方法来编码/解码长< - >字符串

String s = encode( range, l );
Run Code Online (Sandbox Code Playgroud)

long l = decode( range, s );
Run Code Online (Sandbox Code Playgroud)

所以 decode(range, encode(range, 123456789L)) == 123456789L

如果范围是"0123456789",这是通常的编码方式.

java string encoding decoding character-encoding

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

有没有办法在Ruby中解码q编码的字符串?

我正在使用邮件,名称和主题有时会进行q编码,如下所示:

=?UTF-8?Q?J=2E_Pablo_Fern=C3=A1ndez?=
Run Code Online (Sandbox Code Playgroud)

有没有办法在Ruby中解码它们?似乎TMail应该照顾它,但它没有这样做.

ruby email decoding

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

将字节数组转换为字符串然后再转换为字节数组时,为什么长度不同?

我有以下Java代码:

byte[] signatureBytes = getSignature();

String signatureString = new String(signatureBytes, "UTF8");
byte[] signatureStringBytes = signatureString.getBytes("UTF8");

System.out.println(signatureBytes.length == signatureStringBytes.length); // prints false
Run Code Online (Sandbox Code Playgroud)

问:我可能误解这一点,但我觉得new String(byte[] bytes, String charset)String.getBytes(charset)互为逆运算?

问:作为后续工作,将byte []数组作为String传输的安全方法是什么?

java encoding utf-8 decoding

4
推荐指数
2
解决办法
2243
查看次数

Lua,处理非ascii字节流,字节顺序改变

需要编码和解码字节流(可能包含非ascii字符),从/到uint16,uint32,uint64(它们的典型C/C++含义),处理字节序.什么是在Lua中做这样事情的有效且有希望的跨平台方式?

我的目标arch是64位x86_64,但是想保持它的可移植性(如果它在性能方面没有花费我的成本).

例如

解码(比如当前在Lua字符串中) - 0x00,0x1d,0xff,0x23,0x44,0x32(小端)as - uint16:(0x1d00)= 7424 uint32:(0x324423ff)= 843326463

如果有人可以用一个例子解释,那将会很棒.

lua encoding bytearray decoding endianness

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

ASN.1八位字符串

我正在解码ASN.1格式的X.509证书.我正在成功解码它,遍历结构,但有一件事我不明白.

在某些情况下,我得到一个八位字符串,我正在玩的这个网站(http://lapo.it/asn1js/)显示这些八位字节字符串实际上包含更多的ASN.1树.这个网站用(封装)注释这样的八位字符串

我的问题是:在解析过程中我怎么知道一个八位字节串实际上封装了更多东西?我是否只是尝试解析它,看看我是否有标签和有效长度?如果不是那么它是纯字节数据?如果是,那么它是一个有效的子树?

或者这是否意味着输出为字节,然后消费者只应该尝试解析它,如果他知道它是某些键的编码数据?

以网站上已加载的示例为例,点击"解码".我指的是例如偏移332,它是封装位串的八位字节串.

asn.1 decoding

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

编码解码字节

我有一个嵌入式设备,以这种格式发送UTC日期(日期是4个字节):

 buffer.push_back((BYTE)(time_utc & 0x000000FF));
 buffer.push_back((BYTE)((time_utc & 0x0000FF00) >> 8));
 buffer.push_back((BYTE)((time_utc & 0x00FF0000) >> 16));
 buffer.push_back((BYTE)((time_utc & 0xFF000000) >> 24));
Run Code Online (Sandbox Code Playgroud)

在服务器上,我收到字节并存储它们socket_buf,从索引0-3开始并使用以下逻辑对其进行解码

mypkt.dateTime = ( ( socket_buf[0] << 24) +  
(socket_buf[1 ] << 16) +  socket_buf[2] << 8) + 
(socket_buf[3] << 0));
Run Code Online (Sandbox Code Playgroud)

但我不确定是否正确解码它,因为我得到的日期不正确.任何人都可以建议我解码它的正确方法吗?我使用Linux命令解码日期(16711840是我通过解码获得的数字):

#date -d @16711840
Run Code Online (Sandbox Code Playgroud)

c sockets embedded encoding decoding

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

ruby包和十六进制值

半字节是四位.这意味着有16(2 ^ 4)个可能的值.这意味着半字节对应于单个十六进制数字,因为十六进制是基数16.字节是2 ^ 8,因此可以用2个十六进制数字表示,因此可以用2个半字节表示.

所以下面我有一个1字节的字符:

'一个'

那个角色是2 ^ 8:

 'A'.unpack('B*')
 => ["01000001"] 
Run Code Online (Sandbox Code Playgroud)

这意味着它应该由两个十六进制数字表示:

 01000001 == 41
Run Code Online (Sandbox Code Playgroud)

根据Ruby文档,对于Array方法包,当aTemplateString(参数)等于'H'时,它将返回一个十六进制字符串.但这就是我得到的回报:

['A'].pack('H')
 => "\xA0" 
Run Code Online (Sandbox Code Playgroud)

我的第一点是它不应该返回的十六进制值.它应该返回十六进制值41.第二点是半字节的概念,正如我上面解释的那样,意味着1个字节,它应该返回两个半字节.但在它上面插入一个0,因为它认为输入只有1个半字节,即使'A'是一个字节并且有两个半字节.很明显我在这里遗漏了一些东西.

ruby hex unpack decoding pack

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

将缓冲区转换为可读字符串javascript

我收到一个JSON作为缓冲区。我想将其解析为可读或JSON对象。

但是,尽管使用了所有技术(JSON.stringify()toString('utf8'),我仍无法完成它。

这是我到目前为止所拥有的:

在此处输入图片说明

这就是它给我的:

在此处输入图片说明

如何将其转换为可读的内容?

javascript decoding protocol-buffers node.js

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