[연재 53] 인공지능으로 만드는 QR코드

2023. 6. 23. 18:18인간이 묻고 인공지능이 답하다

[연재 53] 인공지능으로 만드는 QR코드

 

QR Code Art Generator을 이용하면 세상에 하나밖에 없는 QR코드를 만들 수 있다.  일명 허깅페이스 QR코드이다. 이 코드를 이용하면 기계식 QR코드가 아닌 예술적이고 멋진 QR코드를 만들 수 있다.

https://huggingface.co/spaces/huggingface-projects/QR-code-AI-art-generator

 

QR Code AI Art Generator - a Hugging Face Space by huggingface-projects

 

huggingface.co

 

 

 

1. 이미지주소나 qr코드 이미지를 준비해 주시면 된다.

아래에 보시면 url을 넣을 수 있으며 만약 기존의 QR코드가 있다면 그대로 넣을 수 있다.url주소는 기본이고, 이미지는 옵션이다. 둘 중 하나만 넣으면 되니까 형편에 맞게 넣어서 작업하도록 한다. 

 

2. 만들고자 하는 프롬프트를 입력합니다.

대화형chatGPT의 프롬프트처럼 만들고자 하는 프롬프트 내용을 입력하면 된다. 프롬프트는 챗gpt에 가서 원하는 내용을 입력하되 영어로 작성한 후 그 내용을 넣으시면 된다. 예를들면 사진에 카메라와 프레임이 들어가 있으며흐릿하게 프레임라이프라는 글자나 QR코드속에 들어갔으면 좋겠어라고 한글로 작성한 후 프롬프트을 작성한다. 그런 후 아래의 프롬프트에 넣어둔다. 

 

3. 파라메터를 설정해주어야 한다. 

QR 코드 이미지를 초기 이미지로 사용하고 제어 이미지를 사용하여 제공된 프롬프트와 매우 자연스럽게 혼합되는 QR 코드를 생성할 수 있습니다. 강도 매개변수는 QR 코드에 노이즈가 추가되는 정도를 정의하고 노이즈가 있는 QR 코드는 Controlnet을 통해 프롬프트와 QR 코드 이미지로 안내됩니다. 0.8에서 0.95 사이의 높은 강도 값을 사용하고 0.6에서 2.0 사이의 컨디셔닝 척도를 선택합니다. 이 모드는 틀림없이 미적으로 가장 매력적인 QR 코드 이미지를 달성하지만 controlnet 컨디셔닝 척도 및 강도 값을 더 많이 조정해야 합니다. 생성된 이미지가 원래 QR 코드와 매우 유사하게 보이면 강도 값을 부드럽게 높이고 컨디셔닝 척도를 줄이십시오. 또한 아래의 예를 확인하십시오.

We use the QR code image as the initial image and the control image, which allows you to generate QR Codes that blend in very naturally with your provided prompt. The strength parameter defines how much noise is added to your QR code and the noisy QR code is then guided towards both your prompt and the QR code image via Controlnet. Use a high strength value between 0.8 and 0.95 and choose a conditioning scale between 0.6 and 2.0. This mode arguably achieves the asthetically most appealing QR code images, but also requires more tuning of the controlnet conditioning scale and the strength value. If the generated image looks way to much like the original QR code, make sure to gently increase the strength value and reduce the conditioning scale. Also check out the examples below.

 

4. 하단에 있는 런 버튼을 눌러 줍니다.

그러면 인공지능이 관련 QR코드를 생성한다. 시간이 조금 걸릴 수 있으니 너무 조급하게 생각하지 않는 것이 좋다. 

위를 보시면 좌측 상단에 제작되고 있는  상황을 보게 된다.

주의할 점은 강도(strength)는  0.8에서 0.95 사이, 컨디셔닝(conditioning)0.6에서 2.0 사이로 한다.  만약 QR코드가 인식되지 않으면 컨디셔닝과 강도를 조절해 주어야 한다.

 

내가 원하는 느낌의 QR코드가 아닌 것 같아 다시 수정해 보았습니다. 위의 코드는 정상 인식되지만 원하는 느낌의 코드를 재생성해 보았습니다.

프롬프트 내용은 아래와 같다.
An image of the sky, the earth, and people. The sky is blue, the earth is green, and the people are red

파라멘트는
Use a high strength value between 0.8 and 0.95 and choose a conditioning scale between 0.6 and 2.0

위의 값을 입력한 후 런을 누르니까

398초나 걸리네요. 7분이 채 걸리지 않네요. 생성될때까지 기다리면 된다.