• Техника
  • Улучшение изображения с помощью нейросетей [AI-UPSCALE] (p.148)
2022/04/04 10:23:07
Genik07
tim6676
Вот примеры, где я стабилизировал изображение в SD перед VEAI, и как видите всё нормально.
https://disk.yandex.ru/d/8pUVczGOkIAXvw 




Если не сложно приложите пожалуйста скрипт. Вижу что там не только стабилизация была. Ваши скрипты очень полезны для понимания проделанной работы.
 
tim6676
Хотелось бы услышать, стоит ли делать меню, и выкладывать где нибудь, или нет? Если кому нужно всё, выложу на ЯД.




Супер! Очень нужно. Меню не обязательно. Мне кажется что для большинства сейчас это лишнее.
2022/04/04 13:09:02
tim6676
hdmaniac
 Да, с меню было бы замечательно. Красная палатка просто супер с меню получилась...

Genik07
 Супер! Очень нужно. Меню не обязательно. Мне кажется что для большинства сейчас это лишнее.

Хорошо, сделаю с меню, раз оно тоже потребно. Только времени надо по-больше.
Genik07
 Если не сложно приложите пожалуйста скрипт. Вижу что там не только стабилизация была. Ваши скрипты очень полезны для понимания проделанной работы.
 

 На самом деле, там всё довольно сложно. 
 Сначала в XviD4PSP 5 я подбирал нужные фильтра для шумоподавления и яркостной стабилизации, делал объединённый скрипт и запускал его в VirtualDub, для стабилизации в двухпроходном плагине Deshaker. Стабилизация целиком всего фильма не возможна. Разные участки фильма требуют разных настроек стабилизатора, которые нужно ещё правильно подобрать. В итоге у Вас получиться большое количество стабилизированных отрывков фильма, из которых потом собирается весь фильм. Я уже приводил когда-то пример скрипта, ну вот к примеру:
 
Скрипт 3-й серии

Import("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\functions\AudioFunctions.avs")
Import("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\functions\VideoFunctions.avs")
LoadPlugin("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\plugins\SplineResize.dll")
A = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\1.avi", audio=false)
A1 = Trim(A, 0, 2461)
B = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\3 серия_04.avi", audio=false)
B1 = Trim(B, 2462, 6745)
A2 = Trim(A, 6746, 10856)
C = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\в вмашине 3.avi", audio=false)
C1 = Trim(C, 57, 300)
D = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\основной.avi", audio=false)
D1 = Trim(D, 11101, 11393)
E = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\в машине 3.avi", audio=false)
E1 = Trim(E, 323, 2093)
A3 = Trim(A, 13165, 13782)
F = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\в машине22.avi", audio=false)
F1 = Trim(F, 106, 1060)
A4 = Trim(A, 14738, 22760)
L = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\gjbcr.avi", audio=false)
L1 = Trim(L, 35, 2702)
H = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\РАЦИЯ.avi", audio=false)
H1 = Trim(H, 21, 5377)
D2 = Trim(D, 30786, 33355)
K = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\МАГЕЛЬ.avi", audio=false)
K1 = Trim(K, 26, 2333)
D3 = Trim(D, 35664, 37356)
A5 = Trim(A, 37357, 56188)
M = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\мерцание.avi", audio=false)
M1 = Trim(M, 39, 1997)
X = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\eeeeeeeeeeeeeeeeeee.avi", audio=false)
X1 = Trim(X, 5, 519)
M2 = Trim(M, 2513, 4923)
A6 = Trim(A, 61074, 64325)
N = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\допрос.avi", audio=false)
N1 = Trim(N, 1, 1946)
O = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\1проба.avi", audio=false)
O1 = Trim(O, 44, 1022)
N2 = Trim(N, 2926, 9667)
A7 = Trim(A, 73993, 77667)
D4 = Trim(D, 77668, 93960)
P = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\ХРОНИКА.avi", audio=false)
P1 = Trim(P, 46, 1460)
D5 = Trim(D, 95376, 96373)
Q = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ТРЕТЬЯ СЕРИЯ\РАБОТА.avi", audio=false)
Q1 = Trim(Q, 1004, 4993)
A8 = Trim(A, 100364, 107925)
A1 ++ B1 ++ A2 ++ C1 ++ D1 + E1 ++ A3 ++ F1 ++ A4 ++ L1 ++ H1 ++ D2 ++ K1 ++ D3 ++ A5 ++ M1 ++ X1 ++ M2 ++ A6 ++ N1 ++ O1 ++ N2 ++ A7 ++ D4 ++ P1 ++ D5 ++ Q1 ++ A8
ConvertToYV12()
Tweak(hue=0, sat=0.0, bright=0, cont=1.00, coring=true, dither=false)
###[FILTERING]###
###[FILTERING]###
Спрятать

 
Скрипт 5-й серии

Import("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\functions\AudioFunctions.avs")
Import("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\functions\VideoFunctions.avs")
LoadPlugin("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\plugins\SplineResize.dll")
N = AVISource("E:\Temp\ПРОБЫ ОМЕГА\ВТОРАЯ СЕРИЯ\алтернот 1-2.avi", audio=false)
N1 = Trim(N, 0, 374)
A = AVISource("E:\Temp\ПРОБЫ ОМЕГА\Пятая серия\5 СЕРИЯ.avi", audio=false)
A1 = Trim(A, 375, 13560)
B = AVISource("E:\Temp\ПРОБЫ ОМЕГА\Пятая серия\2-2серия_T04.avi", audio=false)
B1 = Trim(B, 17, 722)
C = AVISource("E:\Temp\ПРОБЫ ОМЕГА\Пятая серия\ПЯТАЯ СЕРИЯ.avi", audio=false)
C1 = Trim(C, 14267, 17117)
D = AVISource("E:\Temp\ПРОБЫ ОМЕГА\Пятая серия\руки2_T04.avi", audio=false)
D1 = Trim(D, 18, 785)
C2 = Trim(C, 17886, 22100)
E = AVISource("E:\Temp\ПРОБЫ ОМЕГА\Пятая серия\картина2.avi", audio=false)
E1 = Trim(E, 21, 1259)
C3 = Trim(C, 23340, 25685)
A2 = Trim(A, 25686, 28764)
F = AVISource("E:\Temp\ПРОБЫ ОМЕГА\Пятая серия\5серия_T04.avi", audio=false)
F1 = Trim(F, 28765, 31534)
C4 = Trim(C, 31535, 36334)
G = AVISource("E:\Temp\ПРОБЫ ОМЕГА\Пятая серия\машина3 .avi", audio=false)
G1 = Trim(G, 14, 416)
F2 = Trim(F, 36738, 44055)
C5 = Trim(C, 44056, 49526)
H = AVISource("E:\Temp\ПРОБЫ ОМЕГА\Пятая серия\магель.avi", audio=false)
H1 = Trim(H, 5, 784)
F9 = Trim(F, 50307, 53020)
J = AVISource("E:\Temp\ПРОБЫ ОМЕГА\Пятая серия\IKJCCTH.avi", audio=false)
J1 = Trim(J, 9, 706)
F3 = Trim(F, 53719, 60575)
K = AVISource("E:\Temp\ПРОБЫ ОМЕГА\Пятая серия\СНЕГ.avi", audio=false)
K1 = Trim(K, 1, 1576)
F4 = Trim(F, 62152, 78307)
L = AVISource("E:\Temp\ПРОБЫ ОМЕГА\Пятая серия\ПОСЛЕДНИЙ СНЕГ.avi", audio=false)
L1 = Trim(L, 8, 1912)
F5 = Trim(F, 80213, 85401)
A3 = Trim(A, 85402, 85997)
F6 = Trim(F, 85998, 93248)
A4 = Trim(A, 93249, 93482)
F7 = Trim(F, 93483, 95371)
C6 = Trim(C, 95372, 95887)
F8 = Trim(F, 95888, 103299)

N ++ A1 ++ B1 ++ C1 ++ D1 ++ C2 ++ E1 ++ C3 ++ A2 ++ F1 ++ C4 ++ G1 ++ F2 ++ C5 ++ H1 ++ F9 ++ J1 ++ F3 ++ K1 ++ F4 ++ L1 ++ F5 ++ A3 ++ F6 ++ A4 ++ F7 ++ C6 ++ F8
###[FILTERING]###
###[FILTERING]###
Спрятать

 Как видно каждая серия собиралась из 28 кусочков. Для этого пришлось стабилизировать 3 раза полностью весь фильм с разными настройками и ещё 9 отрывков различной длинны. Это без тех которые по разным причинам не получились, или не подошли. В общем не всё так гладко и красиво, мороки очень много.
 
   А это комбинированный скрипт из 2-х фильтров (облегченный RemoveDirtMC_SE 1.0 + MC_Spuds)для шумоподавления и устранения мерцания 
комбинированный скрипт

Import("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\functions\AudioFunctions.avs")
Import("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\functions\VideoFunctions.avs")
LoadPlugin("C:\Program Files (x86)\XviD4PSP 5\apps\DGMPGDec\DGDecode.dll")
LoadPlugin("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\plugins\NicAudio.dll")
MPEG2Source("E:\Temp\disc1.index\disc1_T03.d2v", cpu=0, info=3)
ConvertToYV12()
###[FILTERING]###
XviD4PSPPluginsPath = "C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\plugins\"
LoadPlugin(XviD4PSPPluginsPath + "HQDN3D.dll")
LoadPlugin(XviD4PSPPluginsPath + "dfttest.dll")
LoadPlugin(XviD4PSPPluginsPath + "FFT3DFilter.dll")
LoadPlugin(XviD4PSPPluginsPath + "RGTools.dll")
LoadPlugin(XviD4PSPPluginsPath + "RemoveGrainTSSE2.dll")
LoadPlugin(XviD4PSPPluginsPath + "mvtools.dll")
LoadPlugin(XviD4PSPPluginsPath + "medianblur2.dll")
LoadPlugin(XviD4PSPPluginsPath + "aWarpSharp2.dll")
LoadPlugin(XviD4PSPPluginsPath + "WarpSharp.dll")
LoadPlugin(XviD4PSPPluginsPath + "deblock.dll")
LoadPlugin(XviD4PSPPluginsPath + "DctFilter.dll")
Import(XviD4PSPPluginsPath + "deblock_qed_MT2.avs")
LoadPlugin(XviD4PSPPluginsPath + "masktools2.dll")
LoadPlugin(XviD4PSPPluginsPath + "Gradfun2db.dll")
LoadPlugin(XviD4PSPPluginsPath + "AddGrainC.dll")
Import(XviD4PSPPluginsPath + "Gradfun2DBMod 1.5.avsi")
Import(XviD4PSPPluginsPath + "LimitedSharpenFaster.avs")
Import(XviD4PSPPluginsPath + "MC_Spuds.avs")
Import(XviD4PSPPluginsPath + "Ylevels.avs")
LoadPlugin(XviD4PSPPluginsPath + "deflicker.dll")
LoadPlugin(XviD4PSPPluginsPath + "RGTools.dll")
LoadPlugin(XviD4PSPPluginsPath + "RemoveGrainTSSE2.dll")
LoadPlugin(XviD4PSPPluginsPath + "RepairTSSE2.dll")
LoadPlugin(XviD4PSPPluginsPath + "RemoveDirtSSE2.dll")
LoadPlugin(XviD4PSPPluginsPath + "mvtools2.dll")
LoadPlugin(XviD4PSPPluginsPath + "masktools2.dll")
LoadPlugin(XviD4PSPPluginsPath + "FluxSmooth.dll")
LoadPlugin(XviD4PSPPluginsPath + "AddGrainC.dll")
LoadPlugin(XviD4PSPPluginsPath + "GradFun2DB.dll")
Import(XviD4PSPPluginsPath + "SeeSaw.avsi")
Import(XviD4PSPPluginsPath + "RemoveDirtMC_SE 1.0.avs")
Import(XviD4PSPPluginsPath + "GradFun2DBmod 1.5.avsi")
Import(XviD4PSPPluginsPath + "Ylevels.avs")
RemoveGrain(0)
ChangeFPS(last,last,true)
deflicker()
RemoveDirtMC_SE(radius=1,repmode=0,clmode=0,TwoPassDeNoise=false)
FluxSmoothST(2,5)
#unsharpmask(20,1,0)
#a = last
#b = a.RemoveGrain(mode=17)
#SeeSaw(a,b, NRlimit=3, NRlimit2=4, Sstr=1.5, Slimit=5, Spower=5, Sdamplo=6, Szp=16)
#GradFun2DBmod(thr=1.6,thrC=2.0,str=1.0,strC=0.0,temp=100,adapt=64)
#YlevelsS(0,1.0,255,0,255)
# setmemorymax(768)
RemoveGrain(0) # No-Op filter, just to do frame request
ChangeFPS(last,last,true) # initiate a small forward buffer
# ColorYUV(gain_y=0,cont_y=0,cont_u=0,cont_v=0,gain_v=0,gain_u=-0,off_y=0,off_u=-0,off_v=-0)
mc_spuds(mode="medium high",focus=true,removeblocks=true,edgeclean=true,sharpp=0,chro=true)
Gradfun2dbmod(thr=1.51,thrC=1.8,str=0.8,temp=50,adapt=64)

# Назначение: Для очень качественной обработки DVD и других источников
# Тип предварительного шумоподавителя: fft3dfilter
# Тип основного шумоподавителя: на основе векторного анализа оценки движения с frames=3 на базе скрипта MC_Spuds
# Тип шарпера: LSFmod
# Наличие фильтра DeBanding по умолчанию: включен
# Скорость обработки: медленная
###[FILTERING]###
Спрятать

2022/04/04 15:51:16
Genik07
3-й и 5-й скрипты это просто склейка кусочков. Мне не понятно почему Вы включаете в этот процесс аудио, которое можно присоединить в конце. Но возможно Вы правите видео на несколько кадров, тогда в этом имеется смысл.
 
Скрипт Шумоподавления и устранения мерцания Вы уже выкладывали ранее. Меня интересовал используемый Вами скрипт стабилизации ...
XviD4PSP 5 к сожалению не запускается на моем новом компе. Там очень хороший подбор скриптов, но он мне сейчас не доступен ((.
 
2022/04/04 17:26:47
tim6676
Genik07
Мне не понятно почему Вы включаете в этот процесс аудио, которое можно присоединить в конце. 

 С чего Вы это взяли?
"audio=false" при декодировании в AVI Source как раз и означает, что звук отключен.
 А при декодировании в MPEG2Source с включенным звуком, вместо строки:
 MPEG2Source("адрес файла. index\_____ .d2v"", cpu=0, info=3)
 были бы строки:
video = MPEG2Source("адрес файла. index\_____ .d2v", cpu=0, info=3)
audio = NicAC3Source("адрес файла.index\______ DELAY __ms.mpa")
AudioDub(video, audio)
 Строки:
Import("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\functions\AudioFunctions.avs")
Import("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\functions\VideoFunctions.avs")
LoadPlugin("C:\Program Files (x86)\XviD4PSP 5\apps\DGMPGDec\DGDecode.dll")
LoadPlugin("C:\Program Files (x86)\XviD4PSP 5\dlls\AviSynth\plugins\NicAudio.dll")
это просто загрузка соответствующих AviSynth-овских библиотек и плагинов.
 
Genik07
 Меня интересовал используемый Вами скрипт стабилизации ...

 Скрипта стабилизации не существует. Вернее в составе фильтров XviD4PSP 5 есть фильтра с возможностью частичной стабилизации, но все они убогие, как и множество программ имеющие стабилизацию, от простых до самых навороченных.
 Самый лучший результат получается в VirtualDub при использовании двухпроходного плагина Deshaker.
2022/04/04 23:01:41
Genik07
tim6676
Скрипта стабилизации не существует. Вернее в составе фильтров XviD4PSP 5 есть фильтра с возможностью частичной стабилизации, но все они убогие, как и множество программ имеющие стабилизацию, от простых до самых навороченных.
 Самый лучший результат получается в VirtualDub при использовании двухпроходного плагина Deshaker.




Я обычно пользую:
mdata = DePanEstimate(range=2, trust=0, dxmax=5, dymax=5, zoommax=1)
DePanStabilize(data=mdata, dxmax=30, dymax=15, zoommax=1, rotmax=0)
 
либо
 
Import("D:\Stab.avs")
Stab(range=1,dxmax=2,dymax=0,pixaspect=1)
 
параметры настраиваются индивидуально.
Согласен, что не всегда все получается как хотелось бы но не убого. VirtualDub тоже дает хороший результат.
2022/04/12 19:49:02
Genik07
https://disk.yandex.ru/i/iVcyw6EGBAMYWw
 
Может кому интересно мульт "Тайна 3 планеты"
 
2022/04/13 16:09:00
alexeiden
Genik07
https://disk.yandex.ru/i/iVcyw6EGBAMYWw
 
Может кому интересно мульт "Тайна 3 планеты"
 


Отлично получилось! Спасибо!
2022/04/14 14:23:48
tim6676
"А зори здесь тихие": https://disk.yandex.ru/d/yt_xmBRw872OUQ
 Просьба, у кого железный плейер, поделиться как работает меню (что то сомнения берут, а проверить не на чем).
2022/04/15 13:23:16
Genik07
tim6676
"А зори здесь тихие": https://disk.yandex.ru/d/yt_xmBRw872OUQ
 Просьба, у кого железный плейер, поделиться как работает меню (что то сомнения берут, а проверить не на чем).




Супер! Спасибо.
2022/04/15 14:52:45
MartinWest
Video Enhance v2.6.4Released April 14, 2022.
Major features
  • Support for Intel ARC GPUs
Improvements
  • Nvidia GTX performance improved by 10-15%.
  • M1 16GB machines performance improved by 15-20%.
  • Reduce machine load allows M1 users to use the app without heating up.
  • Fixes need to repeated login on certain machines
  • Audio is now properly kept on Mac for certain input formats like wmv, vob etc.
Known Issues
  • Comparison view output frames sometimes might be out of sync
  • Certain mp4 videos crash the app on native M1, run app in rosetta2 for now
  • Multiple file download sometimes gets stuck in model manager
  • Using preset with batches messes up settings
  • Avoid using output size of 8K or greater if using a machine with less than 32GB or memory
© 2025 APG vNext Commercial Version 5.5

Use My Existing Forum Account

Use My Social Media Account