Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este breve tutorial explica a funcionalidade de reconhecimento de texto incluída nos exemplos da API de IA do Windows para WinForms. Especificamente, ele demonstra como usar APIs de IA do Windows para executar o reconhecimento de texto em uma imagem e resumir o texto reconhecido.
Pré-requisitos
Conclua as etapas na página Introdução para WinForms.
Introdução
A classe MainForm no MainForm.cs é a principal interface do usuário para o aplicativo de exemplo da API de IA do Windows que implementa a seguinte funcionalidade:
- Selecionar Arquivo: permite que o usuário selecione um arquivo de imagem em seu sistema de arquivos e exibe essa imagem em uma PictureBox.
- Imagem do processo: processa a imagem selecionada para extrair texto usando o OCR (Reconhecimento Óptico de Caracteres) e, em seguida, resume o texto extraído.
Principais funções e manipuladores de eventos
Algumas das funções e manipuladores de eventos mais significativos nos exemplos da API de IA do Windows para WinForms incluem o seguinte:
-
SelectFile_Click: abre uma caixa de diálogo de arquivo para o usuário selecionar um arquivo de imagem e exibe a imagem selecionada. -
ProcessButton_Click: manipula o processamento da imagem selecionada, incluindo carregar modelos de IA, executar o reconhecimento de texto e resumir o texto. -
LoadAIModels: carrega os modelos de IA necessários (TextRecognizer e LanguageModel) para reconhecimento e resumo de texto. -
PerformTextRecognition: usa o TextRecognizer para executar o OCR na imagem selecionada e extrai o texto. Essa função está incluída no exemplo de reconhecimento de texto a seguir. -
SummarizeImageText: usa o LanguageModel para gerar um resumo do texto extraído devido a um comando.
Exemplo de reconhecimento de texto
A PerformTextRecognition função neste exemplo
private async Task<string> PerformTextRecognition()
{
using TextRecognizer textRecognizer = await TextRecognizer.CreateAsync();
ImageBuffer? imageBuffer = await LoadImageBufferFromFileAsync(pathToImage);
if (imageBuffer == null)
{
throw new Exception("Failed to load image buffer.");
}
RecognizedText recognizedText =
textRecognizer!.RecognizeTextFromImage(imageBuffer);
var recognizedTextLines = recognizedText.Lines.Select(line => line.Text);
string text = string.Join(Environment.NewLine, recognizedTextLines);
richTextBoxForImageText.Text = text;
return text;
}
Criar e executar o exemplo
- Clone o repositório WindowsAppSDK-Samples .
- Alterne para a branch "release/experimental".
- Navegue até a pasta Samples/WindowsAIFoundry/cs-winforms-pckg .
- Abra WindowsAISample.sln no Visual Studio 2022.
- Altere a Plataforma de Solução para corresponder à arquitetura do pc Copilot+.
- Clique com o botão direito do mouse na solução no Gerenciador de Soluções e selecione "Compilar" para criar a solução.
- Depois que o build for bem-sucedido, clique com o botão direito do mouse no projeto no Gerenciador de Soluções e selecione "Definir como Projeto de Inicialização".
- Pressione F5 ou selecione "Iniciar Depuração" no menu Depurar para executar o exemplo (o exemplo também pode ser executado sem depuração selecionando "Iniciar sem Depuração" no menu Depurar ou Ctrl+F5).