Introdução geral
O DCT-Net é um projeto de código aberto desenvolvido pela DAMO Academy e pelo Instituto Wang Xuan de Tecnologia da Computação da Universidade de Pequim, com o objetivo de realizar a conversão estilizada de imagens para animação. O projeto usa técnicas de aprendizagem profunda para converter perfeitamente fotos naturais em vários estilos de arte, como animação, 3D, pintura à mão, esboços etc., usando a tradução calibrada por domínio. O DCT-Net fornece uma variedade de modelos de pré-treinamento e oferece suporte ao treinamento de dados de estilo personalizados, o que é adequado para entretenimento pessoal, design criativo, bem como para os setores de filmes e jogos. e para os setores de filmes e jogos.
Lista de funções
- Fornece uma grande variedade de modelos pré-treinados que abrangem uma grande variedade de estilos artísticos
- Suporte para treinamento com dados de estilo personalizados
- Avaliação on-line, sem necessidade de configuração do ambiente local
- Desempenho eficiente, compatível com ambientes de CPU e GPU
- Conversão de estilo para imagens e vídeos
Usando a Ajuda
Instalação e configuração
- Instalação de dependências: Primeiro, você precisa instalar o
escopo do modelo
que pode ser instalada com o seguinte comando:pip install "modelscope[cv]" -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html
- Download do modelo pré-treinadoNa primeira execução do código, o modelo baixa automaticamente o arquivo de pré-treinamento.
Conversão de estilo de imagem
- Definição do modeloDefinição de cinco tipos de estilos de rosto a serem convertidos pelo modelo DCT-Net:
model_dict = { "anime": "damo/cv_unet_person-image-cartoon_compound-models", "3d": "damo/cv_unet_person-image-cartoon-3d_compound-models", "handdrawn" (desenhado à mão): "damo/cv_unet_person-image-cartoon-handdrawn_compound-models", "esboço": "damo/cv_unet_person-image-cartoon-sketch_compound-models", "arte": "damo/cv_unet_person-image-cartoon-artstyle_compound-models" }
- Carregar imagens e convertê-las::
importação os importação cv2 de IPython.display importação Imagem, exibição, clear_output de modelscope.pipelines importação tubulação de modelscope.utils.constant importação Tarefas de modelscope.outputs importação OutputKeys style = "anime" # Opcional "anime", "3d", "handdrawn", "sketch", "art" nome do arquivo = "4.jpg" img_path = 'picture/' + nome do arquivo
Conversão de estilo de vídeo
- Extrair quadros de vídeo::
vídeo = 'sample_video.mp4' arquivo_de_vídeo = 'movie/' + vídeo image_dir = 'movie/images/' vc = cv2.VideoCapture(video_file) i = 0 se vc.isOpened(). rval, frame = vc.read() enquanto rval. cv2.imwrite(image_dir + str(i) + '.jpg', frame) i += 1 rval, frame = vc.read() vc.release()
- Conversão de quadros de vídeoEstilo: estilize cada quadro usando o mesmo método utilizado para a conversão de imagens e, em seguida, mescle os quadros convertidos em um vídeo.