Verified: a year ago
SafeTensor
The FLUX.1 [dev] Model is licensed by Black Forest Labs. Inc. under the FLUX.1 [dev] Non-Commercial License. Copyright Black Forest Labs. Inc.
IN NO EVENT SHALL BLACK FOREST LABS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH USE OF THIS MODEL.
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
I used a short Python script to grab a 1.000 random images from a MP4 file
Then I used czkawka (github) to get rid of any duplicate or similar images
I've made a list of all charactes appearances, removing those that appeared the most often to avoid biases within the model
After that, I checked all the images manually and picked the 209 most aesthetic
I used a custom GPT (scavengers reign GPT) for captioning
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.