Scavengers Reign Flux

Details

Model description

This model was trained on 209 random screenshots from the TV-show Scavengers Reign (2023) on MAX. I've used GPT-4o for captioning.
I've
I've kept most of the default settings of the 24gb LoRA config except for the steps which I've set to 4.000 steps.

Workflow

  1. I used a short Python script to grab a 1.000 random images from a MP4 file

  2. Then I used czkawka (github) to get rid of any duplicate or similar images

  3. I've made a list of all charactes appearances, removing those that appeared the most often to avoid biases within the model

  4. After that, I checked all the images manually and picked the 209 most aesthetic

  5. I used a custom GPT (scavengers reign GPT) for captioning

  6. Finally I've trained the model with ostris ai-toolkit (github).

Code:

import cv2
import random

mp4_directory = ''
output_directory = ''
frames_to_extract = 120
base_name = "Random_screenshot"
list_of_random_frames = []
frame_distance = 100
first_frame = 0 

count = 0

vidcap = cv2.VideoCapture(mp4_directory)
totalFrames = vidcap.get(cv2.CAP_PROP_FRAME_COUNT)
while count < frames_to_extract:
    count += 1
    count_str = str(count)
    frames_skipped = -1
    while True:
        randomFrameNumber = random.randint(0, totalFrames)
        frames_skipped +=1
        if frames_skipped > 0:
            print(f"Frame Skipped {frames_skipped}")
        if all(abs(randomFrameNumber - frame) > frame_distance and randomFrameNumber> first_frame for frame in list_of_random_frames):
            break
    list_of_random_frames.append(randomFrameNumber)
    photo_output = output_directory + base_name + count_str + ".png"
    vidcap.set(cv2.CAP_PROP_POS_FRAMES,randomFrameNumber)
    success, image = vidcap.read()
    if success:
        cv2.imwrite(photo_output, image)
    print(f"Saving image to: {photo_output}")

PS: If you want the dataset please contact me. I just don't want to get CivitAI in copyright trouble.

Images made by this model

No Images Found.