JPEG Repair
세부 정보
파일 다운로드
모델 설명
이것은 JPEG 아티팩트를 제거하고 실제 사진의 원래 텍스처를 복원하는 것을 목표로 하는 개념 증명 LORA로, 피부 텍스처에 특화되어 있습니다.
데이터셋
학습 이미지는 사설 데이터셋에서 선정한 750장의 고품질 여성 신체 부위 사진으로 구성되어 있습니다. 이 사진들은 다양한 거리(극近距离에서 전신까지), 각도, 조명 등으로 촬영되었습니다. 대상 이미지를 생성하기 위해 원본 이미지(5-30메가픽셀)를 수동으로 리사이즈/크롭(Lanczos)하여 768, 1024, 1280, 1536 해상도 버킷으로 변환했으며, 컨트롤 이미지를 생성하기 위해 ffmpeg -q:v 2 및 6로 압축했습니다. 대부분의 이미지는 4:3 또는 3:2의 종횡비를 가지며, 리사이즈 후에도 종횡비가 유지됩니다.
학습
이 LORA는 bf16 비양자화된 Kontext 모델 가중치에서 학습되었습니다(아래 제한사항 참조). adamw8bit, 학습률 2e-04, 재시작이 있는 코사인 스케줄러(2.66 사이클)를 사용하여 총 3500스텝으로 학습했으며, 이 중 500스텝은 워밍업 단계였습니다. 그 후 웨이블릿 손실을 계속 사용하여 1250스텝을 더 학습했고, 이 단계에서 러링과 블로킹 아티팩트를 효과적으로 제거했습니다(MSE 손실은 블로킹만 제거할 수 있었고, 1250스텝 동안 러링에는 거의 효과가 없었습니다). 이후 1250스텝 동안 MSE 손실을 사용하여 미세한 픽셀 수준의 텍스처를 추가하고 텍스처 선명도를 향상시켰습니다(웨이블릿 손실은 픽셀 수준 텍스처에 약간 흐릿한 결과를 낳았습니다). 마지막으로 -q:v 6 샘플만 사용하여 추가로 500스텝을 학습했으며, 이는 텍스처 추가에 도움이 되었다고 생각했습니다. 전체 학습은 저노이즈 후기 타임스텝 손실에만 집중했습니다.
사용 방법
트리거 단어는 없습니다. 일반적인 Kontext 워크플로우에 LORA를 추가하고 실행만 누르면 됩니다.
25스텝의 Euler/Simple로 사용할 때 좋은 결과를 얻었습니다.
로드맵
- 데이터셋에 2048 해상도 샘플 추가
- 캡셔닝
- 입력 이미지를 2배로 확대한 후 학습/실험/공개하는 2x 모델 개발(아티팩트가 2배 커지면 모델이 고품질 결과를 생성하기 쉬워질 수 있음)
- 확대된 아티팩트를 가진 샘플을 데이터셋에 추가
- 8x8 JPEG 블록이 정렬되지 않은 샘플을 데이터셋에 추가
제한사항
- AI 생성 이미지: 이 LORA는 오직 실제 사진만으로 학습되었으며, 실제 사진 복원을 목적으로 합니다. AI 생성 이미지를 복원하는 방법을 모를 수 있습니다. 이에 대한 테스트는 진행하지 않았습니다.
- 양자화: 테스트 중, Kontext 기본 모델이 fp8로 양자화되면 입력에서 JPEG 아티팩트를 신뢰할 수 있게 재현조차 못했고, 픽셀을 확대해 보면 모두 흐릿한 덩어리가 되었습니다. 의미 있는 결과를 얻기 위해 이 LORA는 비양자화된 모델로 학습하고 실행해야 했습니다.
- 업스케일링: 이는 업스케일러가 아니며 이미지를 확대하지 않습니다. JPEG 아티팩트가 원래 텍스처가 있었음을 암시할 때만 텍스처를 추가합니다. 아티팩트가 전혀 없는 완전히 매끄러운 피부/표면에는 텍스처를 추가하지 않으며, 플라스틱 같은 피부를 자연스러운 피부로 자동으로 변환하지도 않습니다.
- 노화된 주름진 피부: 노화된 피부에 대한 테스트나 학습은 진행되지 않았습니다.
- 얼굴: 얼굴을 복원할 수 있지만, CivitAI 이용약관 때문에 얼굴에 특화된 학습은 하지 않았습니다. 얼굴의 블로킹/러링 아티팩트는 일반적으로 제거하지만, 얼굴 피부 텍스처 추가 효과는 사용자마다 다를 수 있습니다. 향후 CivitAI 외부에서 얼굴을 포함해 학습한 버전을 공개할 계획입니다.
- 노이즈가 많은 이미지: JPEG 압축으로 인한 색차 및 명도 노이즈가 많은 이미지에는 작동하지만, 신뢰할 수는 없습니다. 학습 데이터에는 일부 노이즈 이미지가 포함되어 있지만, 비율은 매우 적습니다.
- 모션 블러: 데이터셋에는 심각한 모션 블러가 있는 이미지가 없습니다. 모션 블러가 있는 이미지에 대해 나쁜 결과를 생성하지는 않지만, 이에 대해 학습되지 않았습니다.
- 얕은 심도: 데이터셋의 많은 이미지가 얕은 심도를 포함하고 있습니다(실제 카메라/렌즈로 촬영됨). 모델이 무엇을 해야 할지 확신이 없을 때 흐릿한 얕은 심도 효과를 생성하는 경향이 있습니다. 이 편향을 줄일 계획입니다.
- 매우 어두운 피부 톤: 이에 대한 학습 데이터가 없으며, 테스트도 하지 않았습니다. 작동할 수도 있고 아닐 수도 있습니다.
- 많은 음모: 학습 데이터는 대부분 음모가 없거나 적습니다. 여전히 작동할 수 있지만, 이에 특화된 학습은 하지 않았습니다.
- 프롬프트 준수: 이 LORA는 압축된 JPEG 이미지 복원에만 목적이 있습니다. 일반 프롬프트도 사용할 수 있지만, 품질이 저하될 수 있습니다.
- 이는 개념 증명 LORA입니다. 놀라울 정도로 잘 작동하지만, 여전히 개념 증명 LORA입니다.


