Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este breve tutorial percorre a funcionalidade de reconhecimento de texto incluída nos exemplos da API de IA do Windows para o WinForms. Especificamente, demonstra como usar APIs de IA do Windows para realizar reconhecimento de texto numa imagem e resumir o texto reconhecido.
Pré-requisitos
Conclua as etapas na página Introdução ao WinForms.
Introdução
A classe MainForm em MainForm.cs é a interface principal para a aplicação de exemplo da API de IA do Windows, que implementa a seguinte funcionalidade:
- Select File: Permite que o usuário selecione um arquivo de imagem de seu sistema de arquivos e exiba essa imagem em um PictureBox.
- Imagem de processo: processa a imagem selecionada para extrair texto usando o reconhecimento ótico de caracteres (OCR) e, em seguida, resume o texto extraído.
Principais funções e manipuladores de eventos
Algumas das funções e gestores de eventos mais significativos nos exemplos da API de IA do Windows para WinForms incluem as seguintes:
-
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: Lida com o processamento da imagem selecionada, incluindo o carregamento de modelos de IA, a realização de reconhecimento de texto e o resumo do texto. -
LoadAIModels: Carrega os modelos de IA necessários (TextRecognizer e LanguageModel) para reconhecimento e sumarização de texto. -
PerformTextRecognition: Usa o TextRecognizer para executar OCR na imagem selecionada e extrai o texto. Esta função está incluída no seguinte exemplo de reconhecimento de texto. -
SummarizeImageText: Usa o modelo de linguagem para gerar um resumo do texto extraído, dado 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 .
- Mude para a ramificação "lançamento/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 seu 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.
- Quando a compilação for bem-sucedida, 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).