기본 콘텐츠로 건너뛰기

Image 에서 Prompt 를 뽑아내 보자. - Florence2 설치 및 사용

 이미지(Image) 를 보고 Prompt 를 추정하는 것은 쉬운 일이 아니다.

특히 영어로 묘사한다는 것은 참 어려운 일이다.  그러나 멋진 이미지를 보면 그것을 Stable Diffusion 이나 Flux 를 이용하여 비슷하게 생성하고 싶을 것이다.   그럼 그런 이미지의 예상되는 Prompt 를 만들어야 하는데 어떻게 이미지로 부터 추출 할 수 있을까?   chatGPT 도움을 받을 수도, 아니면 다른 온라인 사이트의 도움을 받을 수 도 있는데  내가 사용해본 결과 그래도 Florence2 를 이용하여 뽐아내는것이 가장 좋은 근접한 이미지의 Prompt 가 나온다.
Florence in Italy

1. Florence2 모델이 무엇인가 ?

    Florence2는 마이크로소프트에서 개발한 비전 기반 AI 모델로, 이미지 이해와 생성에 초점을 맞추고 있다.  Florence2는 Florence의 업그레이드 버전으로, 멀티모달 AI 시스템을 기반으로 하며, 이미지와 텍스트 데이터를 동시에 처리할 수 있다. 이 모델은 특히 이미지 캡셔닝, 이미지 검색, 이미지 분류 등의 작업에서 탁월한 성능을 보인다.  여기서 우리는 Florence2 모델에게 이미지를 주고 그것을 이해하고 해석해주는 기능을 이용하는 것이다.  

2. Florence2 설치


Pinokio 브라우저
  • 우측 상단 맨 첫번째 Discover 클릭
  • Florence2 를 찾는다.

Florence2
  • 이것을 클릭하여 다운로드 한다.
  • Florence2 Install 클릭
  • 여러가지 파일들이 설치되기 때문에 시간이 좀 소요되는데 기다리고 있으면 Pinokio 앱이 알아서 모든 파일들을 설치 해 줄 것이다.
  • 설치가 완료되면 아래와 같은 화면이 나온다.

Florence2 설치된 화면
  • 이 후부터 Florence2 를 사용 할려면 Pinokio 앱을 실행 해 주면 Pinokio 브라우저에 Florence2 가 들어 있기 때문에 클릭만 하면 바로 실행 된다.

3. Florence2 사용법

Florence2 조건 입력
  • 1번항 : 여기에 원하는 이미지를 올리면 된다.
  • 2번항 : 이미지를 해석할 모델을 선택한다. 모델이 클수록 더 자세히 해석을 하기 
    때문에 가급적 VRAM 용량 한도에서 최대한 대규모 모델을 선택한다.  (Microsoft-Florence2-Large 선택)
  • 3번항: 해석 유형인데 여기서는 (More Detailed Caption) 을 선택한다.
  • 4번항 을 클릭하면 이미지를 해석한다.
  • 5번항 에 해석된 Caption 이 나타난다.  이것을 복사하여 Prompt 로 사용하면 된다.

4. 실례

입력한 이미지
  • 결과 Caption(Prompt) : "The image is a digital art piece that appears to be a fantasy landscape. It is a dark and eerie scene with a dark background. The focal point of the image is the silhouette of a tree on the right side, with its branches reaching up towards the sky. The tree is surrounded by pink and purple flowers and leaves. On the left side, there are several butterflies fluttering around, creating a sense of movement and energy. The sky is filled with a rainbow of colors, including pink, orange, yellow, green, blue, and purple. The sun is shining through the trees, casting a warm glow on the scene. The overall effect is one of peacefulness and serenity"
  • 이 Prompt를 가지고 Flux를 이용하여 이미지를 생성해 보았다.



Flux로 생성된 이미지
  • Stable Diffusion (SDXL) 을 이용하여 생성해 보았다.

SDXL 로 생성된 이미지

5. 결론

    Florence2 모델을 이용하여 이미지의 Caption을 추출한 후 그것을 Prompt 로 해서 이미지를 생성해 본 결과 원본 이미지와 유사한 느낌의 이미지를 만들 수 있다는 것을 알 수 있다.
물론 같은 Prompt 일지라도 생성된 이미지 들이 모두 다르듯이 원본 이미지에서 추출한 Prompt 도 그것을 이용하여 생성 할 때 원본과 똑 같을 수는 없는 것이다.  그러나 비슷한 느낌의 원본 이미지를 만들 수 있기 때문에 그것을 토대로 Prompt 를 수정하여 사용한다면 독특한 나만의 이미지를 만들어 낼 수 있다.  Stable Diffusion 이나 Flux 등을 이용하여 이미지를 만드는 일이 기존 이미지와 똑같은 이미지를 만들어 내는 일이 아니기 때문에 멋진 이미지를 보고 그것을 만들 수 있는 Prompt 를 예측하는 것 만으로도 Prompt를 공부하고 발전시키는데 많은 도움이 될 것이라고 생각한다. 
참고로 Compyui 사용자는 노드 중에서 Florence2 노드가 있기 때문에 그것을 설치하고 사용한 다면 Comfyui 에서 좀 더 쉽게 사용이 가능하다.

댓글

이 블로그의 인기 게시물

Comfyui Wildcard 사용법 - Stable Diffusion , Flux 에서 쉽게 Random Prompt 로 이미지 만들기

 Comfyui Wildcard 사용법에 대하여 알아본다. Comfyui 로 Stable Diffusion 또는 Flux 로 이미지를 만들 때 Prompt 가 이미지를 결정하는데 매우 중요한 역할을 한다.  영어가 모국어가 아닌 이상 영어로 prompt 를 만드는 것이 참 어려운 일이다. 물론 처음에는 많은 다른 사람들이 사용한 prompt 들을 모방하여 수정하고 사용하는데 이런 일을 하나하나 해 보기가 시간이 많이 걸리고 어렵다.   그래서 Random 으로 prompt 가 만들어 져서 이미지가 생성되고 그 이미지 중에서 마음에 드는 이미지들을 골라 그 이미지의 Prompt들 만을 가지고 보완하고 개선하면 더 편리하고 좋지 않을까 생각이 든다.  그런 식의 Random Prompt 생성이 가능하게 해주는 것이 wildcard 사용이다. Joker는 card game에서 wildcard 이다. 1. Wildcard 의 의미      와일드 카드(Wildcard)란 카드 게임에서 유래되었다.  이런 카드 게임에서 모든 카드의 대용으로 쓸 수 있는 비장의 카드를 와일드 카드라고 한다. 포커나 훌라를 할 때 조커가 이런 역할을 하는데 ,  이 의미가 컴퓨터와 스포츠로 확장되어 사용되는 것이다. 컴퓨터 용어로 쓰일 때는 한 디렉터리 내에 여러 파일이 존재하거나, 파일 이름의 뒷부분을 정확히 알지 못하는 경우에도 사용할 수 있는 명령어를 말합니다. '*'을 넣으면 빠진 것에 어떤 문자열이 있든지 대신할 수 있고,  '?'는 임의의 한 문자에만  대응한다. Comfyui 에서 wildcard 사용은 "--문자열--"  이런 식으로 wildcard 사용 가능한 노드에 prompt 를 입력해 주면 그 노드는 "문자열" 에  해당되는 파일을 찾아 그 파일 내용 중에서 임의의 일부분을 prompt 로 대체해 준다. 2. Wildcard 사...

Flux Controlnet 적용 방법 - Comfyui 에서 사용

Flux에서도 이제 Controlnet 기능을 사용할 수있다. Comfyui 에서 Stable Diffusion 과 같은 방식으로 사용 할 수 있는  controlnet 모델들이 출시 되었다. 1. Controlnet 이란 ?      ControlNet은 Stable Diffusion 과 같은 이미지 생성 모델에서 조건부 입력 을 추가하여 결과 이미지를 더 세밀하게 제어할 수 있게 한다. 예를 들어, 포즈 , 스케치 , 엣지 지도(edge map) 등을 입력으로 받아 생성된 이미지를 밑그림으로 이미지에 반영할 수 있다.  2. Flux용 Controlnet 모델     Stable Diffusion 용 Controlnet 모델들은 Canny, Depth, Hed, Scribble, Open Pose, Sketch 등 여러가지 모델들이 있는데 Flux 용 모델들은 그 중에서 Canny, Depth, Hed 3가지 종류의 모델들만 출시되었다. 각각의 적용하는 대상은 어떤 이미지를 생성 하는가에 따라 적합한 것을 사용하면 되는데 3가지 모델들이 서로 다른 듯 비슷한 기능들이 섞여 있어서 많은 시행을 해 본 후 더 적합한 모델들을 사용하기를 권한다. 3. Controlnet 적용 기본     Controlnet 의 적용은 먼저 원본 이미지가 필요하고 그것을 Controlnet 모델들이 인식할 수 있도록 바꾸어 주는 전처리기를 통과한 후 Controlnet 모델들을 선택하여 이  이미지를 적용하여 Sampler에 입력한다. 이를 간단하게 workflow 를 구성하면 다음과 같다. 기본 Controlnet Workflow 전처리기는 Controlnet 모델별로 각각 다른 전처리기를 사용하기 때문에 항상 모델에 맞는 전처리기를 사용하여야 올바른 이미지를 얻을 수 있다. 4. Controlnet 모델 과 필수Nod 다운로드 및 설치     다운로드는 huggingf...

Pinokio 앱 설치 - 오픈 소스 AI 플랫폼

  Pinokio 는 오픈 소스 AI 플랫폼이다. 로컬에서 AI 애플리케이션을 쉽게 설치하고 실행할 수 있게 도와주는 오픈 소스 AI 플랫폼이다. 이 플랫폼은 사용자가 복잡한 설치 과정 없이 클릭 한 번으로 AI 도구들을 설치할 수 있도록 설계되어 있다. 이를 통해 기술적인 배경 지식이 없는 초보자나 비전문가들도 쉽게 AI 애플리케이션을 사용할 수 있다.   이미 설치되어 있는 애플리케이션이 있어도 별도의 독립된 공간에서 문제없이 사용할 수 있게 해준다.   우리가 stable diffusion 을 comfyui 에서 사용하기 위해서는 "Python", "git ....", "conda"  뭔지 모르지만 설치해야 하는데 pinokio 브라우저에서 원 클릭으로 알아서 설치를 해주기 때문에  컴맹인 일반인도 쉽게 설치하고 사용 할 수 있다. pinokio.computer 1. Pinokio 주요 기능 원클릭 설치 : 복잡한 환경 설정이나 명령어 입력 없이도 다양한 AI 모델을 한 번의 클릭으로 설치할 수 있다. 예를 들어, Comfyui 나 Flux 같은 AI 도구들을 손쉽게 설치할 수 있다. 다양한 AI 애플리케이션 제공 : Pinokio는 다양한 오픈 소스 AI 애플리케이션을 제공하는 허브 역할을 하며, Pinokio 브라우저 나 홈페이지에서 쉽게 찾아 설치할 수 있다. 브라우저 기반 인터페이스 : 모든 설치된 애플리케이션은 Pinokio 웹 브라우저에서 관리할 수 있어, 친숙한 인터페이스로 쉽게 사용이 가능하다. 독립적인 가상 컴퓨터 : Pinokio는 백엔드 작업을 자동으로 처리하여, 애플리케이션이 로컬에서 실행되는 동안 인터넷에 연결되어 있지 않아도 된다. 2. Pinokio 설치 구글에서 pinokio 를 검색하여 " pinokio.computer " 를 클릭 Download 클릭 다운로드 된 pinokio 압축 파일을  푼다. pinokio 설치파일을 실행하여 설치 설치과정은 복...