Prefácio
Você já se deparou com essa situação? Quando você navegou no Weibo ou na conta oficial, viu um texto interessante, então enviei uma captura de tela para o Moments para compartilhar com meus amigos. No entanto, ao publicar imagens, o software forçará a compactação das imagens, fazendo com que a resolução da imagem caia e o texto fique borrado e difícil de ler. Existe alguma maneira de resolver essa situação? Claro que existe. O kit Huawei HMS ML fornece tecnologia de superdivisão de texto, que pode romper as limitações físicas da resolução do texto na imagem e aumentar a imagem com conteúdo de texto em 9 vezes (3 vezes o comprimento e a largura) e aumentar significativamente a clareza do texto na imagem E reconhecibilidade, resolvem facilmente o problema de baixa resolução de texto em fotos.
Cenário de aplicação
A tecnologia de superdivisão de texto tem muitos cenários de aplicação na vida. Por exemplo, quando as imagens publicadas por Moments of Friends são compactadas, a tecnologia de superdivisão de texto pode restaurar as imagens para alta definição.
Ou quando o documento é fotografado novamente, o texto capturado não fica claro devido à longa distância, desfocado e outros motivos. A tecnologia de superdivisão de texto pode melhorar a clareza e a capacidade de reconhecimento do documento reproduzido e tornar as palavras do documento claras.
Como é, é muito prático? Aqui está uma breve introdução sobre como integrar o serviço de superdivisão de texto do HMS ML Kit.
Combate de desenvolvimento
1. Configure o endereço do armazém Maven
1.1 Abra o arquivo "build.gradle" de nível de projeto do Android Studio
1.2 Adicionar o plugin agcp HUAWEI e a base de código Maven.
Configure o endereço do repositório Maven do HMS Core SDK em allprojects -> repositories.
allprojects {
repositories {
google()
jcenter()
maven {url 'https://developer.huawei.com/repo/'}
}
}
Configure o endereço do repositório Maven do HMS Core SDK em buildscript-> repositories.
buildscript {
repositories {
google()
jcenter()
maven {url 'https://developer.huawei.com/repo/'}
}
}
2. Integre o SDK do serviço de super-resolução de texto e imagem
2.1 Integração completa do SDK (recomendado)
dependencies{
// 引入基础SDK
Implementation 'com.huawei.hms:ml-computer-vision-textimagesuperresolution:2.0.3.300'
// 引入文字图像超分辨率模型包
implementation 'com.huawei.hms:ml-computer-vision-textimagesuperresolution-model:2.0.3.300'
}
2.2 Configuração de adição de cabeçalho de arquivo
apply plugin: 'com.android.application'
apply plugin: 'com.huawei.agconnect'
2.3 Atualizar o modelo de aprendizado de máquina
<meta-data
android:name="com.huawei.hms.ml.DEPENDENCY"
android:value= "tisr"/>
3. Desenvolvimento de código
3.1 Criar um analisador de super-resolução de imagem de texto
MLTextImageSuperResolutionAnalyzer analyzer = MLTextImageSuperResolutionAnalyzerFactory.getInstance().getTextImageSuperResolutionAnalyzer();
3.2 Construir MLFrame por meio de android.graphics.Bitmap (observe que o tipo de bitmap aqui deve ser ARGB8888, preste atenção à conversão necessária)
// 通过bitmap创建MLFrame,bitmap为输入的图片数据。
MLFrame frame = new MLFrame.Creator().setBitmap(bitmap).create();
3.3 Processamento de super-resolução de imagens contendo texto
Task<MLTextImageSuperResolutionResult> task = analyzer.asyncAnalyseFrame(frame);
task.addOnSuccessListener(new OnSuccessListener<MLTextImageSuperResolutionResult>() {
public void onSuccess(MLTextImageSuperResolutionResult result) {
// 超分成功的处理逻辑。
}})
.addOnFailureListener(new OnFailureListener() {
public void onFailure(Exception e) {
// 超分失败的处理逻辑。
if (e instanceof MLException) {
MLException mlException = (MLException)e;
// 获取错误码,开发者可以对错误码进行处理,根据错误码进行差异化的页面提示。
int errorCode = mlException.getErrCode();
// 获取报错信息,开发者可以结合错误码,快速定位问题。
String errorMessage = mlException.getMessage();
} else {
// 其他异常。
}
});
3.4 Após a conclusão do overscore, pare o analisador e libere os recursos de detecção
if (analyzer != null) {
analyzer.stop();
}
Endereço do Github
Veja o código-fonte de demonstração: https://github.com/HMS-Core/hms-ml-demo/tree/master/MLKit-Sample/module-vision/src/main/java/com/huawei/mlkit/sample/activity
Para obter diretrizes de desenvolvimento mais detalhadas, consulte o site oficial da Huawei Developer Alliance
https://developer.huawei.com/consumer/cn/hms/huawei-mlkit
Para obter mais detalhes, consulte:
Site oficial da Huawei Developer Alliance:https://developer.huawei.com/consumer/cn/hms
Obtenha documentos de orientação de desenvolvimento:https://developer.huawei.com/consumer/cn/doc/development
Para participar das discussões do desenvolvedor, acesse a comunidade Reddit:https://www.reddit.com/r/HMSCore/
Para baixar a demonstração e o código de amostra, acesse o Github:https://github.com/HMS-Core
Para resolver problemas de integração, vá para Stack Overflow:https://stackoverflow.com/questions/tagged/huawei-mobile-services?tab=Newest
Link original:
https://developer.huawei.com/consumer/cn/forum/topicview?tid=0203349782674210504&fid=18
Autor: deixar folhas