Merge branch 'main' into pr/186
commit
dab2cd99a6
|
|
@ -1,8 +1,9 @@
|
|||
import launch
|
||||
import os
|
||||
|
||||
if not launch.is_installed("send2trash"):
|
||||
launch.run_pip("install Send2Trash", "Send2Trash requirement for image browser")
|
||||
|
||||
# temporarily deactivated
|
||||
#if not launch.is_installed("ImageReward"):
|
||||
#launch.run_pip("install image-reward", "ImageReward requirement for image browser")
|
||||
if not launch.is_installed("ImageReward"):
|
||||
req_IR = os.path.join(os.path.dirname(os.path.realpath(__file__)), "req_IR.txt")
|
||||
launch.run_pip(f'install -r "{req_IR}" --no-deps image-reward', 'ImageReward requirement for image browser')
|
||||
|
|
|
|||
|
|
@ -358,7 +358,7 @@ async function image_browser_controlnet_send(toTabNum, tab_base_tag, image_index
|
|||
|
||||
let clear
|
||||
try {
|
||||
clear = inputContainer.querySelector("button[aria-label='Clear']")
|
||||
clear = inputContainer.querySelector("button[aria-label='Remove Image']")
|
||||
if (clear) {
|
||||
clear.click()
|
||||
}
|
||||
|
|
@ -372,7 +372,7 @@ async function image_browser_controlnet_send(toTabNum, tab_base_tag, image_index
|
|||
// 60 seconds in milliseconds
|
||||
const timeout = 60000
|
||||
while (clear) {
|
||||
clear = inputContainer.querySelector("button[aria-label='Clear']")
|
||||
clear = inputContainer.querySelector("button[aria-label='Remove Image']")
|
||||
if (Date.now() - startTime > timeout) {
|
||||
throw new Error("image_browser_controlnet_send/clear: 60 seconds have passed")
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1 @@
|
|||
fairscale
|
||||
|
|
@ -47,9 +47,7 @@ except ImportError:
|
|||
|
||||
try:
|
||||
import ImageReward
|
||||
# temporarily deactivated
|
||||
# image_reward_installed = True
|
||||
image_reward_installed = False
|
||||
image_reward_installed = True
|
||||
except ImportError:
|
||||
print("Image Browser: ImageReward is not installed, cannot be used.")
|
||||
image_reward_installed = False
|
||||
|
|
@ -1082,16 +1080,19 @@ def generate_image_reward(filenames, turn_page_switch, aes_filter_min, aes_filte
|
|||
for filename in filenames:
|
||||
saved_image_reward_score, saved_image_reward_prompt = wib_db.select_image_reward_score(cursor, filename)
|
||||
if saved_image_reward_score is None and saved_image_reward_prompt is not None:
|
||||
with torch.no_grad():
|
||||
image_reward_score = image_reward_model.score(saved_image_reward_prompt, filename)
|
||||
image_reward_score = f"{image_reward_score:.2f}"
|
||||
try:
|
||||
logger.warning(f"Generated ImageRewardScore: {image_reward_score} for {filename}")
|
||||
except UnicodeEncodeError:
|
||||
pass
|
||||
wib_db.update_image_reward_score(cursor, filename, image_reward_score)
|
||||
if any(filename.endswith(ext) for ext in image_ext_list):
|
||||
img_file_info = update_exif(filename, "ImageRewardScore", image_reward_score)
|
||||
with torch.no_grad():
|
||||
image_reward_score = image_reward_model.score(saved_image_reward_prompt, filename)
|
||||
image_reward_score = f"{image_reward_score:.2f}"
|
||||
try:
|
||||
logger.warning(f"Generated ImageRewardScore: {image_reward_score} for {filename}")
|
||||
except UnicodeEncodeError:
|
||||
pass
|
||||
wib_db.update_image_reward_score(cursor, filename, image_reward_score)
|
||||
if any(filename.endswith(ext) for ext in image_ext_list):
|
||||
img_file_info = update_exif(filename, "ImageRewardScore", image_reward_score)
|
||||
except UnidentifiedImageError as e:
|
||||
logger.warning(f"UnidentifiedImageError: {e}")
|
||||
wib_db.transaction_end(conn, cursor)
|
||||
return -turn_page_switch, aes_filter_min, aes_filter_max
|
||||
|
||||
|
|
@ -1140,8 +1141,7 @@ def create_tab(tab: ImageBrowserTab, current_gr_tab: gr.Tab):
|
|||
|
||||
with gr.Row(visible=others_dir):
|
||||
with gr.Column(scale=10):
|
||||
suffix = "" if others_dir else tab.name
|
||||
img_path = gr.Textbox(dir_name, label="Images directory"+suffix, placeholder="Input images directory", interactive=others_dir)
|
||||
img_path = gr.Textbox(dir_name, label="Images directory", placeholder="Input images directory", interactive=others_dir)
|
||||
with gr.Column(scale=1):
|
||||
img_path_depth = gr.Number(value="0", label="Sub directory depth")
|
||||
with gr.Column(scale=1):
|
||||
|
|
@ -1645,7 +1645,7 @@ def on_ui_tabs():
|
|||
create_tab(tab, current_gr_tab)
|
||||
gr.Checkbox(value=opts.image_browser_preload, elem_id="image_browser_preload", visible=False)
|
||||
gr.Textbox(",".join( [tab.base_tag for tab in tabs_list] ), elem_id="image_browser_tab_base_tags_list", visible=False)
|
||||
gr.Checkbox(value=opts.image_browser_swipe, elem_id=f"image_browser_swipe")
|
||||
gr.Checkbox(value=opts.image_browser_swipe, elem_id=f"image_browser_swipe", visible=False)
|
||||
|
||||
javascript_level_value, (javascript_level, javascript_level_text) = debug_levels(arg_level="javascript")
|
||||
level_value, (level, level_text) = debug_levels(arg_text=opts.image_browser_debug_level)
|
||||
|
|
@ -1655,6 +1655,11 @@ def on_ui_tabs():
|
|||
debug_level_option = ""
|
||||
gr.Textbox(value=debug_level_option, elem_id="image_browser_debug_level_option", visible=False)
|
||||
|
||||
# Webui's ui_loadsave uses gradio labels as keys, this does not work with image browser, as the same labels are used on different tabs
|
||||
# For this reason the do_not_save_to_config attribute is added to each gradio element
|
||||
for key, value in image_browser.blocks.items():
|
||||
setattr(value, "do_not_save_to_config", True)
|
||||
|
||||
return (image_browser, "Image Browser", "image_browser"),
|
||||
|
||||
def move_setting(cur_setting_name, old_setting_name, option_info, section, added):
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ button[id$='_image_browser_del_img_btn'] {
|
|||
/* Workaround until gradio version is updated to a version that fixes it
|
||||
see https://github.com/gradio-app/gradio/issues/1590
|
||||
*/
|
||||
.thumbnail-item > img {
|
||||
#tab_image_browser .thumbnail-item > img {
|
||||
width: auto !important;
|
||||
height: auto !important;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue