Ultralytics YOLO27: Inscreve-te na lista de espera.
Get Started
Crie com a Ultralytics Platform·Implementar e monitorizar·Aula 9/10
Aulaintermediário

Privacidade, regiões e conformidade

Escolha as regiões de dados e de implantação com base nos seus contratos, mantenha os dados privados, anonimize as imagens antes do envio e responda a uma lista de verificação de conformidade pré-lançamento.

Os dados visuais costumam ser pessoais: rostos, placas de veículos, o crachá de um trabalhador no chão de fábrica. Uma região de dados escolhida sem cuidado durante o cadastro, ou um conjunto de dados deixado como Público, pode violar um contrato com um cliente, e é difícil desfazer ambas as situações. Esta lição aborda as decisões sobre região, visibilidade e anonimização com uma etapa executável de desfoque antes do envio e termina com uma lista de verificação que você pode entregar a um responsável pela conformidade.

Resultado

Você pode escolher regiões de dados e de implantação que atendam a um requisito de residência de dados, anonimizar imagens antes do envio quando as ferramentas da Platform não forem suficientes e preencher uma lista de verificação de conformidade com sete perguntas para seu projeto.

Via rápida
Se já sabes orientar-te, aqui está a versão resumida.
  1. A região de dados (US, EU ou AP) é definida durante a integração; os endpoints podem ser executados em qualquer uma das 42 regiões.

  2. Verifique se todos os conjuntos de dados e projetos que contêm dados pessoais estão como Privados.

  3. Desfoque rostos com a Platform; mascare placas e pessoas ao redor por conta própria antes do envio.

  4. Conceda funções à equipe seguindo o princípio do menor privilégio; saiba quem tem a chave de cada endpoint.

  5. Saiba como excluir os dados: Lixeira por 30 dias, implantações imediatamente e exemplos de monitoramento ao reiniciar.

Prático

Região de dados versus região de implantação#

Etapa Região de dados da integração da Ultralytics Platform, com um mapa-múndi e três opções — Américas, Europa, Oriente Médio e África, e Ásia-Pacífico — cada uma com a latência medida e Europa marcada como Recomendada

Durante a integração, a Platform mede a latência até as três regiões de dados e recomenda a mais próxima. Sua escolha se torna a dataRegion da conta:

Região de dadosLocalizaçãoEscolha típica para
US (us)Iowa, EUA (us-central1)Américas
EU (eu)Saint-Ghislain, Bélgica (europe-west1)Europa, Oriente Médio e África; residência de dados exigida pelo GDPR
AP (ap)Changhua, Taiwan (asia-east1)Ásia-Pacífico

A região de dados determina onde a Platform armazena conjuntos de dados, modelos e dados de treinamento gerenciados, e onde a inferência compartilhada é executada. Três itens ficam fora dessa região:

  • Os endpoints dedicados são executados em qualquer uma das 42 regiões de implantação que você escolher; assim, um espaço de trabalho na EU pode atender a solicitações de Tóquio, e a imagem de cada solicitação é enviada para lá.
  • Os dados no nível da conta, como perfil, cobrança e atividade, são processados globalmente, conforme descrito na política de privacidade.
  • Local de processamento. A região de dados é uma garantia de armazenamento. Se um contrato restringir onde o processamento ocorre, confirme com a Ultralytics os locais das GPUs e dos endpoints antes do treinamento ou use o On Premise.

Guia Implantações do perfil da Ultralytics Platform, com um mapa-múndi exibindo todas as regiões disponíveis e a região com uma implantação pronta destacada

Você não pode alterar a região de dados por conta própria; é necessário abrir uma solicitação de suporte. Os espaços de trabalho da equipe herdam a região de dados da pessoa que os cria. Tome a decisão com base no contrato, não na latência:

Quando latência e residência de dados entram em conflito para usuários multinacionais, escolha com cuidado: um endpoint na região de dados (conformidade mais simples, menor velocidade para usuários distantes), endpoints em várias regiões (mais rápidos, mas cada região recebe imagens das solicitações, então verifique cada uma delas em relação ao contrato) ou espaços de trabalho separados por jurisdição (maior separação, mais trabalho operacional).

Visibilidade e acesso#

Os novos conjuntos de dados e projetos são Públicos por padrão nos planos Free e Pro, e Privados no Enterprise. Qualquer pessoa, incluindo visitantes sem sessão iniciada, pode visualizar recursos públicos e cloná-los pelo Explore; tornar um recurso privado depois não remove as cópias que outras pessoas já clonaram. Os espaços de trabalho de equipe (Pro e Enterprise) usam quatro funções:

FunçãoPermissões
ProprietárioTudo, incluindo membros, cobrança, exclusão da equipe e transferência de propriedade
AdministradorEditar tudo; gerenciar cobrança, configurações e membros com funções inferiores à de administrador
EditorCriar, editar e excluir recursos; enviar; treinar, exportar e implantar
VisualizadorLer recursos e consultar membros da equipe

Cada endpoint dedicado está vinculado a uma chave API, e somente o proprietário do espaço de trabalho pode visualizar os valores das chaves. Excluir essa chave não bloqueia o endpoint; interromper ou excluir a implantação, sim.

Exemplo resolvido: anonimizar antes do envio#

A Platform desfoca rostos: clique com o botão direito em uma imagem e escolha Desfocar rostos (gratuito), execute a ação em um conjunto de dados inteiro em Mais ações (US$ 1,00 por 1.000 imagens) ou ative o desfoque na caixa de diálogo Novo conjunto de dados para que as imagens sejam desfocadas durante o processamento dos envios, sem custo. A ferramenta não desfoca placas de veículos, telas ou pessoas inteiras ao redor e não está disponível em conjuntos de dados conectados.

Caixa de diálogo Desfocar rostos da Ultralytics Platform, com configurações de confiança e escala das caixas, uma opção para desfocar envios futuros, imagens de pré-visualização de pessoas com rostos desfocados e um custo estimado de US$ 0,02

Para qualquer outra coisa, anonimize os dados antes que os pixels saiam da sua máquina. Por exemplo, em um projeto com empilhadeiras, as pessoas são transeuntes, não uma classe que você detecta; portanto, desfoque cada pessoa por completo:

from pathlib import Path

import cv2

from ultralytics import YOLO

model = YOLO("yolo26n.pt")  # swap in a plate or face detector for those objects
out = Path("anonymized")
out.mkdir(exist_ok=True)

for result in model.predict("https://ultralytics.com/images/bus.jpg", classes=[0], conf=0.25, verbose=False):
    img = result.orig_img
    for x1, y1, x2, y2 in result.boxes.xyxy.int().tolist():
        img[y1:y2, x1:x2] = cv2.GaussianBlur(img[y1:y2, x1:x2], (51, 51), 0)  # irreversible once saved
    cv2.imwrite(str(out / Path(result.path).name), img)
    print(f"{Path(result.path).name}: blurred {len(result.boxes)} people")
bus.jpg: blurred 4 people
  • classes=[0] limita a detecção a pessoas; indique a pasta de quadros com predict para processar um lote inteiro.
  • conf=0.25 é intencionalmente baixo: para proteger a privacidade, um trecho desfocado a mais é preferível a deixar passar uma pessoa. Mesmo assim, verifique as saídas por amostragem, pois os detectores não identificam pessoas pequenas ou ocluídas.
  • Envie somente a pasta anonymized/ e mantenha os originais conforme sua política de retenção.

Regras para decidir: desfocar apenas os rostos (ferramenta da Platform) quando as pessoas forem uma classe que você detecta, pois desfocar o corpo inteiro destruiria o sinal que o modelo aprende. Desfoque por completo as pessoas ao redor quando pessoas não forem uma classe. Mascare placas quando suas regras as considerarem dados pessoais, como costuma ocorrer na EU e na Califórnia. Quando apenas contagens ou alertas puderem sair do local, execute a inferência na borda e envie metadados em vez de quadros.

Retenção e exclusão#

ItemO que acontece ao excluir
Conjuntos de dados, projetos e modelosSão movidos para a Lixeira por 30 dias (continuam contando no armazenamento) e, depois, excluídos permanentemente
ImplantaçõesSão excluídas de imediato e permanentemente, incluindo o histórico de métricas e registros
Exemplos e estatísticas de monitoramentoFicam na memória do endpoint; desaparecem ao interrompê-lo ou reiniciá-lo, a menos que sejam salvos em um conjunto de dados
Sua contaConfigurações > Perfil > Excluir minha conta; os proprietários de equipes devem excluir ou transferir as equipes primeiro

Para solicitações de acesso, a opção Exportar todos os dados em Configurações > Perfil gera um arquivo JSON com seus metadados (perfil, conjuntos de dados, projetos, modelos e atividade), mas não inclui imagens nem pesos.

Lista de verificação de conformidade pré-lançamento#

  1. O que sai do ambiente do cliente? Quadros, previsões ou apenas dados agregados?
  2. Qual é a região de dados e quais são as regiões de implantação? Cada uma atende ao contrato?
  3. Todos os conjuntos de dados e projetos confidenciais estão como Privados? Verifique se foram criados clones públicos anteriormente.
  4. Os rostos estão desfocados e as placas, mascaradas, quando necessário? Quem verifica por amostragem o que o desfoque deixou passar?
  5. Você tem permissão para treinar com os dados deste cliente? Se não, mantenha-os em um espaço de trabalho separado.
  6. Como você exclui as imagens de um cliente mediante solicitação? Identifique os conjuntos de dados e a etapa da Lixeira.
  7. Quem tem cada função e quem possui as chaves API de implantação?

A Ultralytics publica sua postura de segurança, incluindo a conformidade com a ISO/IEC 27001:2022 e o SOC 2 Type I, na página de segurança. Peça a um responsável pela conformidade que aprove qualquer implantação regulamentada.

Armadilhas#

Um espaço de trabalho da UE atendido por um endpoint dos EUA

Sintoma: uma auditoria de residência de dados identifica imagens de solicitações processadas em Iowa. Solução: a região dos dados não restringe os endpoints. Implante em uma região que atenda ao contrato e liste todas as regiões dos endpoints na lista de verificação.

Desfocando a classe detectada

Sintoma: após a anonimização, a revocação do detector de pessoas cai drasticamente. Solução: desfocar pessoas inteiras remove as características que o modelo aprende. Desfoque apenas os rostos quando pessoas forem uma classe-alvo e os corpos inteiros somente quando forem transeuntes.

Um conjunto de dados privado que era público no mês passado

Sintoma: você tornou um conjunto de dados privado, mas cópias ainda aparecem em Explorar. Solução: clones criados enquanto o conjunto era público pertencem aos respectivos proprietários. Considere a opção Público irreversível para dados confidenciais e defina a visibilidade durante a criação.

Experimente

Responda por escrito às sete perguntas da lista de verificação para seu projeto, incluindo a região de cada endpoint. Em seguida, execute anonymize.py em 20 dos seus próprios quadros com a classe que suas regras exigem mascarar, verifique por amostragem cada imagem de saída e envie somente a pasta anonimizada para um conjunto de dados Privado.

Concluído quando
Você concluiu a aula quando todos estes critérios forem atendidos.
  • Você tem respostas por escrito para as sete perguntas da lista de verificação e marcou qualquer resposta que exija a análise de um responsável pela conformidade.

  • Sua região de dados e todas as regiões de endpoint atendem ao seu requisito de residência de dados.

  • Um conjunto de dados Privado contém apenas imagens anonimizadas, e você registrou quantas detecções precisou corrigir manualmente.

Mostrar solução

Resposta resolvida para a linha de produção de pílulas na Alemanha: (1) Os quadros saem da fábrica somente para rotulagem; as previsões vão para o MES. (2) Região de dados: EU; endpoint europe-west1. (3) Os dois conjuntos de dados e o projeto são Privados; não há clones. (4) Às vezes aparecem as mãos e os rostos dos operadores: a opção Desfocar rostos ao enviar está ativada, e o líder de QA verifica 20 imagens por semana por amostragem. (5) O contrato permite o treinamento com dados da fábrica. (6) As imagens de cada cliente ficam em seu próprio conjunto de dados; portanto, uma solicitação de exclusão significa excluir esse conjunto de dados e, em seguida, usar Esvaziar a Lixeira, em vez de esperar 30 dias pela exclusão automática. (7) Ravi é o proprietário e tem a chave do endpoint; Ana é editora; QA é visualizador. anonymize.py desfocou 23 pessoas em 20 quadros; um operador parcialmente ocluído não foi detectado e precisou ser mascarado manualmente, então o limite foi reduzido para 0.15.

Próximos passos

Última lição: transforme uma implantação em um ciclo de retreinamento tranquilo e repetível, com uma verificação automatizada e uma nova versão.

Entre para salvar seu progresso