diff --git a/bin/lang/Chinese_Simplified.json b/bin/lang/Chinese_Simplified.json index f95b1b0..ddf17f8 100644 --- a/bin/lang/Chinese_Simplified.json +++ b/bin/lang/Chinese_Simplified.json @@ -17,7 +17,7 @@ "IDC_RADIO_MODE_SCALE":"仅放大", "IDC_RADIO_MODE_NOISE":"仅降噪", "IDC_RADIO_AUTO_SCALE":"自动降噪和放大", -"IDC_STATIC_JPEG_NOISE_LEVEL":"JPEG 降噪等级", +"IDC_STATIC_JPEG_NOISE_LEVEL":"降噪等级", "IDC_RADIONOISE_LEVEL1":"1 级", "IDC_RADIONOISE_LEVEL2":"2 级", "IDC_RADIONOISE_LEVEL3":"3 级", diff --git a/bin/lang/Chinese_Traditional.json b/bin/lang/Chinese_Traditional.json index 27204a0..b00fe73 100644 --- a/bin/lang/Chinese_Traditional.json +++ b/bin/lang/Chinese_Traditional.json @@ -17,7 +17,7 @@ "IDC_RADIO_MODE_SCALE":"放大", "IDC_RADIO_MODE_NOISE":"降噪", "IDC_RADIO_AUTO_SCALE":"自動降噪和放大", -"IDC_STATIC_JPEG_NOISE_LEVEL":"JPEG降噪水平", +"IDC_STATIC_JPEG_NOISE_LEVEL":"降噪水平", "IDC_RADIONOISE_LEVEL1":"等級1", "IDC_RADIONOISE_LEVEL2":"等級2", "IDC_RADIONOISE_LEVEL3":"等級3", diff --git a/bin/lang/english.json b/bin/lang/english.json index f807661..1199ab1 100644 --- a/bin/lang/english.json +++ b/bin/lang/english.json @@ -17,7 +17,7 @@ "IDC_RADIO_MODE_SCALE":"Magnify only", "IDC_RADIO_MODE_NOISE":"Denoise only", "IDC_RADIO_AUTO_SCALE":"Magnify && Auto Denoise", -"IDC_STATIC_JPEG_NOISE_LEVEL":"JPEG denoise level", +"IDC_STATIC_JPEG_NOISE_LEVEL":"Denoise level", "IDC_RADIONOISE_LEVEL1":"Level 1", "IDC_RADIONOISE_LEVEL2":"Level 2", "IDC_RADIONOISE_LEVEL3":"Level 3", @@ -90,5 +90,6 @@ "MessageNoOverwrite":"Already file exists in the destination: %s", "MessageCudaOldDeviceError":"Your CUDA device too old.\r\nPlease use Compute Capability 2.0 or more devices", "OK":"OK", -"Cancel":"Cancel" +"Cancel":"Cancel", +"IDC_RADIO_MODEL_UPCONV_RGB":"2-D illust (UpConvRGB Model)" } diff --git a/bin/lang/japanese.json b/bin/lang/japanese.json index 4eabf45..71016ca 100644 --- a/bin/lang/japanese.json +++ b/bin/lang/japanese.json @@ -17,7 +17,7 @@ "IDC_RADIO_MODE_SCALE":"拡大", "IDC_RADIO_MODE_NOISE":"ノイズ除去", "IDC_RADIO_AUTO_SCALE":"ノイズ除去(自動判別)と拡大", -"IDC_STATIC_JPEG_NOISE_LEVEL":"JPEGノイズ除去レベル", +"IDC_STATIC_JPEG_NOISE_LEVEL":"ノイズ除去レベル", "IDC_RADIONOISE_LEVEL1":"レベル1", "IDC_RADIONOISE_LEVEL2":"レベル2", "IDC_RADIONOISE_LEVEL3":"レベル3", @@ -28,7 +28,7 @@ "IDC_STATIC_MODEL":"モデル", "IDC_RADIO_MODEL_RGB":"2次元イラスト (RGBモデル)", "IDC_RADIO_MODEL_PHOTO":"写真・アニメ (Photoモデル)", -"IDC_RADIO_MODEL_Y":"2次元イラスト2 (Yモデル)", +"IDC_RADIO_MODEL_Y":"2次元イラスト (Yモデル)", "IDC_CHECK_TTA":"TTAモードを使う", "IDC_STATIC_PROCESS_SPEED_SETTING":"処理速度設定", "IDC_STATIC_PROCESSOR":"使用プロセッサー", @@ -90,5 +90,6 @@ "MessageNoOverwrite":"出力先に既にファイルが存在します: %s", "MessageCudaOldDeviceError":"CUDAデバイスが古いです。\r\nCompute Capability 2.0以上のデバイスを使用してください", "OK":"OK", -"Cancel":"キャンセル" +"Cancel":"キャンセル", +"IDC_RADIO_MODEL_UPCONV_RGB":"2次元イラスト (UpConvRGBモデル)" } diff --git a/bin/lang/korean.json b/bin/lang/korean.json index 7ddc3a1..60b78c5 100644 --- a/bin/lang/korean.json +++ b/bin/lang/korean.json @@ -17,7 +17,7 @@ "IDC_RADIO_MODE_SCALE":"확대", "IDC_RADIO_MODE_NOISE":"노이즈 제거", "IDC_RADIO_AUTO_SCALE":"자동 노이즈 제거 && 확대", -"IDC_STATIC_JPEG_NOISE_LEVEL":"JPEG 노이즈 제거 단계", +"IDC_STATIC_JPEG_NOISE_LEVEL":"노이즈 제거 단계", "IDC_RADIONOISE_LEVEL1":"1단계", "IDC_RADIONOISE_LEVEL2":"2단계", "IDC_RADIONOISE_LEVEL3":"3단계", diff --git a/bin/lang/turkish.json b/bin/lang/turkish.json index f6826d2..157fb49 100644 --- a/bin/lang/turkish.json +++ b/bin/lang/turkish.json @@ -17,7 +17,7 @@ "IDC_RADIO_MODE_SCALE":"Sadece büyüt", "IDC_RADIO_MODE_NOISE":"Sadece gürültüsüzleştir", "IDC_RADIO_AUTO_SCALE":"Büyüt ve Oto-Gürültüsüzleştir", -"IDC_STATIC_JPEG_NOISE_LEVEL":"JPEG gürültüsüzleştirme düzeyi", +"IDC_STATIC_JPEG_NOISE_LEVEL":"gürültüsüzleştirme düzeyi", "IDC_RADIONOISE_LEVEL1":"Seviye 1", "IDC_RADIONOISE_LEVEL2":"Seviye 2", "IDC_RADIONOISE_LEVEL3":"Seviye 3", diff --git a/waifu2x-caffe-gui/MainDialog.cpp b/waifu2x-caffe-gui/MainDialog.cpp index 55abccb..6d0617b 100644 --- a/waifu2x-caffe-gui/MainDialog.cpp +++ b/waifu2x-caffe-gui/MainDialog.cpp @@ -119,6 +119,10 @@ tstring DialogEvent::AddName() const case eModelTypeY: addstr += TEXT("Y"); break; + + case eModelTypeUpConvRGB: + addstr += TEXT("UpConvRGB"); + break; } addstr += TEXT(")"); @@ -261,20 +265,33 @@ bool DialogEvent::SyncMember(const bool NotSyncCropSize, const bool silent) scale_height = l; } - if (SendMessage(GetDlgItem(dh, IDC_RADIO_MODEL_RGB), BM_GETCHECK, 0, 0)) { - model_dir = TEXT("models/anime_style_art_rgb"); - modelType = eModelTypeRGB; - } - else if (SendMessage(GetDlgItem(dh, IDC_RADIO_MODEL_Y), BM_GETCHECK, 0, 0)) - { - model_dir = TEXT("models/anime_style_art"); - modelType = eModelTypeY; - } - else - { - model_dir = TEXT("models/photo"); - modelType = eModelTypePhoto; + const int cur = SendMessage(GetDlgItem(dh, IDC_COMBO_MODEL), CB_GETCURSEL, 0, 0); + switch (cur) + { + case 0: + model_dir = TEXT("models/anime_style_art_rgb"); + modelType = eModelTypeRGB; + break; + + case 1: + model_dir = TEXT("models/anime_style_art"); + modelType = eModelTypeY; + break; + + case 2: + model_dir = TEXT("models/photo"); + modelType = eModelTypePhoto; + break; + + case 3: + model_dir = TEXT("models/upconv_7_anime_style_art_rgb"); + modelType = eModelTypeUpConvRGB; + break; + + default: + break; + } } { @@ -1383,9 +1400,6 @@ void DialogEvent::SetWindowTextLang() SET_WINDOW_TEXT(IDC_RADIO_SCALE_WIDTH); SET_WINDOW_TEXT(IDC_RADIO_SCALE_HEIGHT); SET_WINDOW_TEXT(IDC_STATIC_MODEL); - SET_WINDOW_TEXT(IDC_RADIO_MODEL_RGB); - SET_WINDOW_TEXT(IDC_RADIO_MODEL_PHOTO); - SET_WINDOW_TEXT(IDC_RADIO_MODEL_Y); SET_WINDOW_TEXT(IDC_CHECK_TTA); SET_WINDOW_TEXT(IDC_STATIC_PROCESS_SPEED_SETTING); SET_WINDOW_TEXT(IDC_STATIC_CROP_SIZE); @@ -1401,6 +1415,21 @@ void DialogEvent::SetWindowTextLang() SET_WINDOW_TEXT(IDC_BUTTON_CLEAR_OUTPUT_DIR); #undef SET_WINDOW_TEXT + + const int cur = SendMessage(GetDlgItem(dh, IDC_COMBO_MODEL), CB_GETCURSEL, 0, 0); + + HWND hwndCombo = GetDlgItem(dh, IDC_COMBO_MODEL); + while (SendMessage(hwndCombo, CB_GETCOUNT, 0, 0) != 0) + { + SendMessage(hwndCombo, CB_DELETESTRING, 0, 0); + } + + SendMessage(hwndCombo, CB_ADDSTRING, 0, (LPARAM)langStringList.GetString(L"IDC_RADIO_MODEL_RGB").c_str()); + SendMessage(hwndCombo, CB_ADDSTRING, 0, (LPARAM)langStringList.GetString(L"IDC_RADIO_MODEL_PHOTO").c_str()); + SendMessage(hwndCombo, CB_ADDSTRING, 0, (LPARAM)langStringList.GetString(L"IDC_RADIO_MODEL_Y").c_str()); + SendMessage(hwndCombo, CB_ADDSTRING, 0, (LPARAM)langStringList.GetString(L"IDC_RADIO_MODEL_UPCONV_RGB").c_str()); + + SendMessage(GetDlgItem(dh, IDC_COMBO_MODEL), CB_SETCURSEL, cur, 0); } void DialogEvent::SetDepthAndQuality(const bool SetDefaultQuality) @@ -1780,24 +1809,18 @@ void DialogEvent::Create(HWND hWnd, WPARAM wParam, LPARAM lParam, LPVOID lpData) SendMessage(GetDlgItem(hWnd, IDC_RADIONOISE_LEVEL3), BM_SETCHECK, BST_CHECKED, 0); } + + int index = 0; if (modelType == eModelTypeRGB) - { - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_RGB), BM_SETCHECK, BST_CHECKED, 0); - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_PHOTO), BM_SETCHECK, BST_UNCHECKED, 0); - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_Y), BM_SETCHECK, BST_UNCHECKED, 0); - } + index = 0; else if (modelType == eModelTypePhoto) - { - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_RGB), BM_SETCHECK, BST_UNCHECKED, 0); - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_PHOTO), BM_SETCHECK, BST_CHECKED, 0); - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_Y), BM_SETCHECK, BST_UNCHECKED, 0); - } + index = 1; + else if (modelType == eModelTypeY) + index = 2; else - { - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_RGB), BM_SETCHECK, BST_UNCHECKED, 0); - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_PHOTO), BM_SETCHECK, BST_UNCHECKED, 0); - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_Y), BM_SETCHECK, BST_CHECKED, 0); - } + index = 3; + + SendMessage(GetDlgItem(dh, IDC_COMBO_MODEL), CB_SETCURSEL, index, 0); if (use_tta) SendMessage(GetDlgItem(hWnd, IDC_CHECK_TTA), BM_SETCHECK, BST_CHECKED, 0); @@ -1945,6 +1968,7 @@ void DialogEvent::Create(HWND hWnd, WPARAM wParam, LPARAM lParam, LPVOID lpData) cmdModelTypeConstraintV.push_back(L"anime_style_art_rgb"); cmdModelTypeConstraintV.push_back(L"photo"); cmdModelTypeConstraintV.push_back(L"anime_style_art_y"); + cmdModelTypeConstraintV.push_back(L"upconv_7_anime_style_art_rgb"); TCLAP::ValuesConstraint cmdModelTypeConstraint(cmdModelTypeConstraintV); TCLAP::ValueArg cmdModelType(L"y", L"model_type", L"model type", false, L"anime_style_art_rgb", &cmdModelTypeConstraint, cmd); @@ -2157,24 +2181,17 @@ void DialogEvent::Create(HWND hWnd, WPARAM wParam, LPARAM lParam, LPVOID lpData) if (cmdModelType.isSet()) { + int index = 0; if (cmdModelType.getValue() == L"anime_style_art_rgb") - { - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_RGB), BM_SETCHECK, BST_CHECKED, 0); - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_PHOTO), BM_SETCHECK, BST_UNCHECKED, 0); - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_Y), BM_SETCHECK, BST_UNCHECKED, 0); - } + index = 0; else if (cmdModelType.getValue() == L"photo") - { - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_RGB), BM_SETCHECK, BST_UNCHECKED, 0); - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_PHOTO), BM_SETCHECK, BST_CHECKED, 0); - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_Y), BM_SETCHECK, BST_UNCHECKED, 0); - } + index = 1; + else if (cmdModelType.getValue() == L"anime_style_art_y") + index = 2; else - { - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_RGB), BM_SETCHECK, BST_UNCHECKED, 0); - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_PHOTO), BM_SETCHECK, BST_UNCHECKED, 0); - SendMessage(GetDlgItem(hWnd, IDC_RADIO_MODEL_Y), BM_SETCHECK, BST_CHECKED, 0); - } + index = 3; + + SendMessage(GetDlgItem(dh, IDC_COMBO_MODEL), CB_SETCURSEL, index, 0); isSetParam = true; } diff --git a/waifu2x-caffe-gui/MainDialog.h b/waifu2x-caffe-gui/MainDialog.h index 48c2a31..133b8ba 100644 --- a/waifu2x-caffe-gui/MainDialog.h +++ b/waifu2x-caffe-gui/MainDialog.h @@ -83,6 +83,7 @@ private: eModelTypeRGB, eModelTypePhoto, eModelTypeY, + eModelTypeUpConvRGB, eModelTypeEnd, }; diff --git a/waifu2x-caffe-gui/Resource.rc b/waifu2x-caffe-gui/Resource.rc index 12ebd8b..5f64ce5 100644 Binary files a/waifu2x-caffe-gui/Resource.rc and b/waifu2x-caffe-gui/Resource.rc differ diff --git a/waifu2x-caffe-gui/Source.cpp b/waifu2x-caffe-gui/Source.cpp index f10f88d..babf999 100644 --- a/waifu2x-caffe-gui/Source.cpp +++ b/waifu2x-caffe-gui/Source.cpp @@ -75,9 +75,7 @@ int WINAPI WinMain(HINSTANCE hInstance, cDialog.SetCommandCallBack(SetClassFunc(DialogEvent::UpdateAddString, &cDialogEvent), NULL, IDC_RADIONOISE_LEVEL1); cDialog.SetCommandCallBack(SetClassFunc(DialogEvent::UpdateAddString, &cDialogEvent), NULL, IDC_RADIONOISE_LEVEL2); cDialog.SetCommandCallBack(SetClassFunc(DialogEvent::UpdateAddString, &cDialogEvent), NULL, IDC_RADIONOISE_LEVEL3); - cDialog.SetCommandCallBack(SetClassFunc(DialogEvent::UpdateAddString, &cDialogEvent), NULL, IDC_RADIO_MODEL_RGB); - cDialog.SetCommandCallBack(SetClassFunc(DialogEvent::UpdateAddString, &cDialogEvent), NULL, IDC_RADIO_MODEL_PHOTO); - cDialog.SetCommandCallBack(SetClassFunc(DialogEvent::UpdateAddString, &cDialogEvent), NULL, IDC_RADIO_MODEL_Y); + cDialog.SetCommandCallBack(SetClassFunc(DialogEvent::UpdateAddString, &cDialogEvent), NULL, IDC_COMBO_MODEL); cDialog.SetCommandCallBack(SetClassFunc(DialogEvent::UpdateAddString, &cDialogEvent), NULL, IDC_CHECK_TTA); cDialog.SetCommandCallBack(SetClassFunc(DialogEvent::UpdateAddString, &cDialogEvent), NULL, IDC_COMBO_OUTPUT_DEPTH); diff --git a/waifu2x-caffe-gui/resource.h b/waifu2x-caffe-gui/resource.h index 879a6f3..86d0a40 100644 Binary files a/waifu2x-caffe-gui/resource.h and b/waifu2x-caffe-gui/resource.h differ