Quatro maneiras principais de desfocar parte da imagem no iPhone e iPad
Você quer esconder algo em uma foto? Aqui estão as melhores maneiras de desfocar parte de uma imagem no iPhone e iPad.
O Vision no iOS 11 tem tudo que você precisa para criar um aplicativo que possa reconhecer caracteres de texto com implementação acontecendo simultaneamente. Você não precisa de um conhecimento técnico de codificação - navegar pelo recurso é bastante simples. Além do mais, a implementação é perfeita.
A estrutura de visão permite que você implemente facilmente qualquer tarefa que envolva detalhes do computador. A estrutura realiza detecção de rosto e rosto, reconhecimento de código de barras, registro de imagem, rastreamento de recursos gerais e detecção de texto. O Vision também permite que você use modelos personalizados do Core ML para tarefas como classificação ou detecção de objetos.
O VN DetectTextRectanglesRequest é uma solicitação de análise de imagem que encontra regiões de texto visível em uma imagem; o recurso retorna caracteres de texto como uma caixa delimitadora retangular com origem e tamanho.
Se você está acostumado a usar o Swift e já programa há algum tempo, provavelmente está se perguntando para que serve o Vision quando há outros recursos como imagem e AVFoundation. Bem, a visão é mais precisa e direta. O recurso também está disponível em uma variedade de plataformas. No entanto, o uso do Vision pode exigir mais poder de processamento e tempo de processamento.
Para usar o Vision para detecção de texto, você precisará do Xcode 9 e de um dispositivo que execute o iOS 11.
Primeiro, você precisa criar uma câmera com AVCapture ; isso ocorre inicializando um objeto AVcapturesession para realizar a captura em tempo real ou offline. Depois disso, faça a sessão para a conexão do dispositivo.
Para economizar tempo na construção de uma IU do seu aplicativo, considere ter um projeto inicial; para começar, isso lhe dará tempo para se concentrar no aprendizado da estrutura Vision.
Abra seu projeto inicial. As visualizações no storyboard devem estar prontas e configuradas para você.
No ViewController.swift, procure a seção de código com funções e saídas.
No outlet- ImageView, d eclare uma sessão para AVcapturesession - isso é usado sempre que você deseja ações realizadas com base em uma transmissão ao vivo.
Defina a sessão de captura AV e o tipo de mídia AV para vídeo, pois você executará a filmagem da câmera para permitir que ela seja executada continuamente
Defina o dispositivo de saída e entrada
A entrada é o que a câmera verá e a saída é o vídeo em um formato de tipo definido de KCVPixelFormatType_32GRA.
Finalmente, adicione uma subcamada que contém vídeos para imageView e inicie a sessão. A função é conhecida como inViewdidload. Você também precisa definir o quadro da camada.
Chame a função no método viewWillAppear .
Como os limites ainda não foram finalizados, substitua o método viewDidLayoutSubviews () para atualizar os limites das camadas.
Após o lançamento do iOS 10, uma entrada adicional em Info.plist é necessária, isso fornece um motivo para usar a câmera. Você também deve definir a descrição de uso da câmera de privacidade.
Existem três etapas para implementar o Vision no aplicativo.
Manipuladores - quando você deseja que a estrutura faça algo depois que a solicitação for chamada.
Observações - isto é o que você deseja fazer com os dados fornecidos por você, começando com uma solicitação
Solicitações - é quando você pede a estrutura do Detect
Idealmente, você cria uma solicitação de texto como VNdetecttextrectanglesrequest . Este é um tipo de VNrequest que se limita ao texto. Depois que a estrutura conclui o aplicativo, prossiga para chamar a função Dettexthandler . Você também vai querer saber o quadro exato que foi reconhecido, defina-o como Reportcharacterboxes = True.
Depois disso, defina as observações que contêm todos os resultados de VNdetecttextrectanglesrequest , lembre-se de adicionar Vision à câmera de saída. Como o Vision expõe APIs de alto nível, trabalhar com ele é seguro.
A função verifica se Cmsamplebuffer existe e PutOut Avcaptureoutput . Você deve então prosseguir para criar uma variável Requestoptions como 1 Dicionário Type VNimageoption . A opção VNmage é um tipo de estrutura que contém propriedades e dados da câmera. Você deve então criar o VNimagerequesthandler e executar a solicitação de texto.
Você pode começar com a estrutura para desenhar duas caixas, uma para cada letra detectada e a outra para cada palavra. As tabelas são a combinação de todas as caixas de caracteres que sua solicitação encontrará.
Agora você tem todas as suas funções definidas.
Para conectar seus pontos, comece executando seu código de forma assíncrona. Você deve então verificar se existe uma região nos resultados de seu VNTextObservation .
Agora você pode chamar sua função, que desenhará uma caixa dentro da área. Verifique se há caixas de caracteres na região e chame o serviço que traz uma caixa ao redor de cada letra.
Depois disso, crie uma variável RequestOptions. Agora você pode criar um objeto VNImageRequestHandler e executar a solicitação de texto que você criou.
Finalmente, a última etapa é executar seu código de visão com a transmissão ao vivo. Você precisará pegar a saída de vídeo e convertê-la em Cmsamplebuffer.
Sempre tente cortar a imagem e processar apenas a seção necessária. Isso reduzirá o tempo de processamento e a pegada de memória
Ative a correção de idioma ao lidar com caracteres não numéricos e, em seguida, desative-a ao lidar com caracteres numéricos
Incluir validação para cadeias de números reconhecidas para confirmar a precisão e eliminar a exibição de valores falsos para o usuário.
O controlador da câmera de documentos é o melhor companheiro para reconhecimento de texto, pois a qualidade da imagem desempenha um papel significativo no reconhecimento de texto.
Considere definir uma altura mínima do texto para aumentar o desempenho.
Com o Vision, você tem tudo o que precisa para reconhecimento de texto. Visto que o Vision é fácil de usar e leva pouco tempo para implementação, usá-lo é quase equivalente a brincar com Legos. Experimente testar seu aplicativo em diferentes objetos, fontes, iluminação e tamanhos. Você também pode se impressionar combinando o Vision com o Core ML.
Você quer esconder algo em uma foto? Aqui estão as melhores maneiras de desfocar parte de uma imagem no iPhone e iPad.
O widget de relógio do iOS está exibindo a hora incorreta ou não está sendo atualizado? Aprenda como consertar o widget de relógio que mostra a hora errada no iPhone.
Você tem músicas incríveis armazenadas no seu PC com Windows? Veja como você pode transferir músicas do computador para o iPhone com ou sem o iTunes.
O Apple Music exibe um erro que diz Esta música não está disponível no momento em seu país ou região? Aqui está um guia para corrigir o erro!
Se você possui um iPhone ou iPad, pode converter facilmente documentos do Word em PDF. Leia para descobrir vários métodos para fazer isso.
Você enfrenta atraso no recebimento de mensagens de texto no iPhone? Aqui estão as melhores maneiras de corrigir o recebimento tardio de mensagens de texto no iPhone.
Quer economizar espaço e converter imagens JPEG em HEIC no iPhone? Dê uma olhada neste artigo para três métodos fáceis de fazer isso!
Se o recurso Atividades ao vivo não estiver funcionando no seu iPhone, aqui estão algumas soluções funcionais para ajudá-lo a corrigir o problema.
Quer aproveitar ao máximo o Modo Avião dos iPhones? Aqui está um truque interessante para agendar o Modo Avião usando a automação do iPhone.
O aplicativo Apple Mail do seu iPhone não carrega imagens em seus e-mails? Aqui estão algumas dicas que ajudarão a resolver o problema rapidamente.