Giter VIP home page Giter VIP logo

anime4kcpp's Introduction

Anime4KCPP
Latest GitHub release Platforms License

About Anime4KCPP

Anime4KCPP provides an optimized bloc97's Anime4K algorithm version 0.9, and it also provides its own CNN algorithm ACNet, it provides a variety of way to use, including preprocessing and real-time playback, it aims to be a high performance tools to process both image and video.
This project is for learning and the exploration task of algorithm course in SWJTU.

About Anime4K09

Anime4K is a simple high-quality anime upscale algorithm. The version 0.9 does not use any machine learning approaches, and can be very fast in real-time processing or pretreatment.

About ACNet

ACNet is a CNN based anime upscale algorithm. It aims to provide both high-quality and high-performance.
HDN mode can better denoise, HDN level is from 1 to 3, higher for better denoising but may cause blur and lack of detail.
for detail, see wiki page.

Why Anime4KCPP

  • Cross-platform, building have already tested in Windows ,Linux, and macOS (Thanks for NightMachinary).
  • GPU acceleration support with all GPUs that implemented OpenCL 1.2 or newer.
  • CUDA acceleration.
  • High performance and low memory usage.
  • Support multiple usage methods.

Usage method

  • CLI
  • GUI
  • DirectShow Filter (Windows only, for MPC-HC/BE, potplayer and other DirectShow based players)
  • AviSynthPlus plugin
  • VapourSynth plugin
  • Android APP
  • C API binding
  • Python API binding
  • GLSL shader(For MPV based players)

For more infomation on how to use them, see wiki.

Result

examples

Performance

Single image (RGB):

Processor Type Algorithm 1080p -> 4K 512p -> 1024p Benchmark score
AMD Ryzen 2600 CPU ACNet 0.630 s 0.025 s 17.0068
Nvidia GTX1660 Super GPU ACNet 0.067 s 0.005 s 250
AMD Ryzen 2500U CPU ACNet 1.304 s 0.049 s 7.59301
AMD Vega 8 GPU ACNet 0.141 s 0.010 s 105.263
Snapdragon 820 CPU ACNet 5.532 s 0.180 s 1.963480
Adreno 530 GPU ACNet 3.133 s 0.130 s 3.292723
Snapdragon 855 CPU ACNet 3.998 s 0.204 s * 3.732736
Adreno 640 GPU ACNet 1.611 s 0.060 s 6.389776
Intel Atom N2800 CPU ACNet 11.827 s 0.350 s 0.960984
Raspberry Pi Zero W CPU ACNet 114.94 s 3.312 s 0.101158

*Snapdragon 855 may use Cortex-A55 core under low loads, which may lead to its performance not as good as Snapdragon 820

Building

For information on how to compile Anime4KCPP, see wiki.

Related projects

pyanime4k

pyanime4k is an Anime4KCPP API binding in Python, easy and fast.

ACNetGLSL

ACNetGLSL is an ACNet (Anime4KCPP Net) re-implemented in GLSL for real-time anime upscaling.

Projects that use Anime4KCPP

Credits

Acknowledgement

semmyenator : Traditional Chinese, Japanese and French translation for GUI

All images are drawn by my friend King of learner and authorized to use, only for demonstration, do not use without permission.

anime4kcpp's People

Contributors

aaronfeng753 avatar fantasygmm avatar k4yt3x avatar miniriley2012 avatar nightmachinery avatar soulspark666 avatar tianzerl avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

anime4kcpp's Issues

Known issues 已知问题

  • OpenCL video processing may hang on a Linux system equipped with Nvidia GPU, which may be caused by NVIDIA OpenCL driver, Please use CUDA instead or specify the number of threads to be used as 2.
  • OpenCL视频处理可能挂起在配备Nvidia GPU的Linux系统上,这可能是由Nvidia OpenCL驱动程序引起的,请改用CUDA或指定线程数为2。

  • In some videos, the audio and picture may not be synchronized after processing, which is generally due to the variable frame rate of the original video. You can try to manually specify the output video frame rate or use VapourSynth and AviSynth to process such videos, see #27.
  • 在某些视频中可能出现处理后音画不同步的现象,一般是由于原视频采用了可变帧率。可尝试手动指定输出视频帧率或者使用VapourSynth以及AviSynth处理这类视频, 可参见 #27

在處理MKV時遇然會出現output file 聲畫不同步


     Anime4KCPP GUI v1.11.0                 
     Anime4KCPP Core v2.4.0                

FFmpeg : https://github.com/BtbN/FFmpeg-Builds/releases

SETTING

ACNet HDN HDN:Level 2 GPU Acceleration for ACNet
upscaling ratio 2.00
threads count 4
Codec dxva Fps 0.00

Headware

CPU: APU R3 3200g
GPU: RX580 8G
RAM: 16G
OS: Win 10

https://drive.google.com/drive/folders/1rztFH9oFFZ7UGgGj-gX4Yc93DHW7fUpV?usp=sharing

如需其它資訊或文件,本人會盡能力補上
兹在此鳴謝大大的開發

Using Anime4k in Android

Did you used Anime4k glsl in mpv-android ?May I discuss this with you? I can pay for your help. My wechat number is 15653242819.

Filters does not support CNN mode

Win10, GTX1060 6G显存,
我已经勾选了GPU加速,
但是中间的log部分显示Filters does not support CNN mode
通过资源管理器发现,GPU内存并没有使用多少
这是怎么回事儿呢

  FFmpeg check OK                
----------------------------------------------
FFmpeg path: ffmpeg
GPU initialize successfully!
Platform: NVIDIA CUDA
Device: GeForce GTX 1060
----------------------------------------------
Filters does not support CNN mode


what are the best settings for film ?

video2x has a film setting but anime4k doesnt so i was wondering if you know what settings make film look the least distorted if you dont know thats fine

[Features request]有没有可能支持在avisynth脚本中调用呢?

通过avisynth的avs脚本挂载有诸多好处
1.可以自定义预处理后处理滤镜以及anime4k的处理位置
2.可以同时添加字幕
3.将图像一次处理减少多次压缩对画面造成的损失

观察后发现avisynth的实现与Anime4KCPP很类似
1.avisynth的filters是cpp
2.avisynth通常使用ffmpeg挂载视频

如果可以支持那就最好啦,感谢

Fail to run on arm64

No matter what I install, I just cannot get the program to run in video processing mode.
Error message:
Failed to load file: file doesn't not exist or decoder isn't installed

OS: Ubuntu 20.04.2 LTS aarch64

CMake Error at cmake/ThirdPartyForGUI.cmake:1 (find_package)

Hi Author,

I'm on macOS Catalina and followed all instructions, and now trying to install the cmake GUI with the command cmake -DCMAKE_C_COMPILER="/usr/local/opt/llvm/bin/clang" -DCMAKE_CXX_COMPILER="/usr/local/opt/llvm/bin/clang++" .. However, the following error occured:

`Demos-MacBook-Pro:Anime4KCPP-2 demo$ cmake -DCMAKE_C_COMPILER="/usr/local/opt/llvm/bin/clang" -DCMAKE_CXX_COMPILER="/usr/local/opt/llvm/bin/clang++" .

No CMAKE_BUILD_TYPE selected, defaulting to Release

CMake Error at cmake/ThirdPartyForGUI.cmake:1 (find_package):
By not providing "FindQt5.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "Qt5", but
CMake did not find one.

Could not find a package configuration file provided by "Qt5" with any of
the following names:

Qt5Config.cmake
qt5-config.cmake

Add the installation prefix of "Qt5" to CMAKE_PREFIX_PATH or set "Qt5_DIR"
to a directory containing one of the above files. If "Qt5" provides a
separate development package or SDK, be sure it has been installed.
Call Stack (most recent call first):
GUI/CMakeLists.txt:37 (include)

-- Configuring incomplete, errors occurred!
See also "/Users/demo/Anime4KCPP-2/CMakeFiles/CMakeOutput.log".
See also "/Users/demo/Anime4KCPP-2/CMakeFiles/CMakeError.log".
Demos-MacBook-Pro:Anime4KCPP-2 demo$ `

Please let me know if I've missed any steps or if any further information is needed to solve the issue.

Thanks in advance!

Regards,
Arupaka

Anime4KCPPDS slows down playing speed by mutiple times with interpolation filter like DmitriRender or SVP Pro on.

Hardware: 4K monitor+1070Ti+3600x
Software: LAV Filters+madVR+DmitriRender/SVP Pro+Anime4KCPPDS+PotPlayer/MPC-HC

I understand the interpolation filters mutiple the frames by several times yet the Anime4KCPPDS still handle it as a normal one, so what we got here is a video track that plays abnormally slow.

I also notice that Anime4KCPPDS works well with madVR, I thought they are both upscaling filters, are they essentially different?

As a matter of fact,I just want to get both realtime 4K and 60FPS effects at the same time, maybe it's too hard for this device or is there a compatibility issue between upscaling software like Anime4KCPPDS and interpolating software like DmitriRender?

BTW, is there anyway to get there regardless of whatever it takes?

trying to buid gave me this error..

after` cloning the git and cmake.. after i do make it gives me this huge error...
Please help

/usr/bin/ld:` warning: libvtkInteractionStyle.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkFiltersExtraction.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkRenderingLOD.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkIOPLY.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkFiltersTexture.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkIOExport.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkRenderingGL2PSOpenGL2.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkIOGeometry.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkImagingCore.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkRenderingFreeType.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkRenderingOpenGL2.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkRenderingCore.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkFiltersSources.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkFiltersGeneral.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkFiltersCore.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkIOImage.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkIOCore.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkCommonExecutionModel.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkCommonDataModel.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkCommonTransforms.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkCommonMath.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: warning: libvtkCommonCore.so.1, needed by /usr/lib/libopencv_viz.so.4.4.0, not found (try using -rpath or -rpath-link) /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractionStyle_AutoInit_Construct()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObject::GetGlobalWarningDisplay()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::Update(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataAlgorithm::SetOutput(vtkDataObject*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTensorGlyph::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataObject::DATA_OBJECT()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataObject::ORIGIN()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkSmartPointerBase::vtkSmartPointerBase(vtkObjectBase*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataAlgorithm::PrintSelf(std::ostream&, vtkIndent)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::SetPosition(double, double, double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkProp3D::SetUserMatrix(vtkMatrix4x4*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyData::GetLines()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::Azimuth(double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::AddInputConnection(int, vtkAlgorithmOutput*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetExecutive(vtkExecutive*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectFactoryRegistryCleanup::vtkObjectFactoryRegistryCleanup()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderer::GetActiveCamera()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `typeinfo for vtkImageAlgorithm' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorObserver::GrabFocus(vtkCommand*, vtkCommand*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPNGWriter::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkProp3D::GetUserMatrix()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::RequestUpdateExtent(vtkInformation*, vtkInformationVector**, vtkInformationVector*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::SetOutput(vtkDataObject*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkStreamingDemandDrivenPipeline::WHOLE_EXTENT()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkOBJExporter::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::FindPokedRenderer(int, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::Register(vtkObjectBase*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::PrintSelf(std::ostream&, vtkIndent)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::UnRegisterInternal(vtkObjectBase*, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkSmartPointerBase::operator=(vtkSmartPointerBase const&)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorObserver::SetPickingManaged(bool)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataAlgorithm::GetOutput()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInformation::Get(vtkInformationDataObjectKey*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkOStrStreamWrapper::vtkOStrStreamWrapper()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObject::DebugOn()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkSphereSource::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObject::GetMTime()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderer::GetActors()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkViewport::RemoveAllViewProps()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyData::GetNumberOfVerts()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkArrowSource::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAxes::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataMapper::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRendererCollection::GetFirstRenderer()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyData::GetStrips()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::FastDelete()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataSetAttributes::GetNormals()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObject::BreakOnError()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkOStreamWrapper::operator<<(void*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetInputArrayToProcess(int, int, int, int, char const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPLYReader::CanReadFile(char const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::StartTimer()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkLight::SetColor(double, double, double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::GetInputConnection(int, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderingFreeType_AutoInit_Destruct()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAppendPolyData::AddInputData(vtkPolyData*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::Roll(double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::EndZoom()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkOStrStreamWrapper::freeze(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::Update(vtkInformation*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkElevationFilter::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderer::RemoveActor(vtkProp*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::AllocateOutputData(vtkDataObject*, vtkInformation*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInformation::Set(vtkInformationDoubleVectorKey*, double, double, double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::ExecuteDataWithInformation(vtkDataObject*, vtkInformation*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::vtkImageAlgorithm()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataSetAlgorithm::GetOutput()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTextActor::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTransformConcatenation::Rotate(double, double, double, double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTransformConcatenation::Scale(double, double, double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::UpdateDataObject()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetNumberOfOutputPorts(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkWriter::PrintSelf(std::ostream&, vtkIndent)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetNumberOfInputPorts(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAssemblyPath::GetLastNode()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::~vtkImageAlgorithm()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPlaneSource::SetPoint1(double, double, double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyData::GetNumberOfLines()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObject::DebugOff()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::FillOutputPortInformation(int, vtkInformation*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::GetReleaseDataFlag()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTubeFilter::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `typeinfo for vtkObjectBase' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObject::HasObserver(char const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::SetTDxStyle(vtkTDxInteractorStyle*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataAlgorithm::RequestInformation(vtkInformation*, vtkInformationVector**, vtkInformationVector*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObject::UnRegisterInternal(vtkObjectBase*, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::ExecuteData(vtkDataObject*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPLYWriter::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::UnRegister(vtkObjectBase*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderingOpenGL2_AutoInit_Construct()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::HighlightProp(vtkProp*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::RemoveInputConnection(int, vtkAlgorithmOutput*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::Register(vtkObjectBase*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkOutlineSource::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInformation::Set(vtkInformationStringVectorKey*, char const*, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorObserver::RegisterPickers()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTextActor::GetInput()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataObject::SPACING()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderer::AddActor(vtkProp*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::Pitch(double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAOSDataArrayTemplate<unsigned char>::SetArray(unsigned char*, long long, int, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataAlgorithm::RequestUpdateExtent(vtkInformation*, vtkInformationVector**, vtkInformationVector*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTextActor::SetInput(char const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkActor2D::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPlanes::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderWindowInteractor::CreateRepeatingTimer(unsigned long)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::HighlightProp3D(vtkProp3D*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::SetViewUp(double, double, double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPoints::GetBounds()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::StopAnimate()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::Yaw(double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::AddInputData(int, vtkDataObject*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDiskSource::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkVectorText::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderer::AddLight(vtkLight*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::RemoveInputConnection(int, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::StartSpin()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::GetClassName() const' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::vtkObjectBase()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderingGL2PSOpenGL2_AutoInit_Destruct()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::RemoveAllInputConnections(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyData::GetPolys()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `typeinfo for vtkPolyDataAlgorithm' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectFactoryRegistryCleanup::~vtkObjectFactoryRegistryCleanup()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::IsTypeOf(char const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetNumberOfInputConnections(int, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAppendPolyData::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkOStrStreamWrapper::~vtkOStrStreamWrapper()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::UpdateTimeStep(double, int, int, int, int const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::Dolly(double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageData::GetScalarType()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::Execute()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkSmartPointerBase::~vtkSmartPointerBase()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkVRMLExporter::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTexture::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInformationVector::GetInformationObject(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTextureMapToPlane::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataAlgorithm::~vtkPolyDataAlgorithm()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkWindowToImageFilter::GetOutput()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorObserver::ComputeDisplayToWorld(vtkRenderer*, double, double, double, double*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::vtkInteractorStyle()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkExtractEdges::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkActor::GetProperty()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetInputArrayToProcess(int, vtkInformation*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::CreateDefaultExecutive()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyData::SetStrips(vtkCellArray*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::UnRegister(vtkObjectBase*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::StartZoom()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::RegisterInternal(vtkObjectBase*, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageReslice::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkLight::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataSetMapper::SetInputData(vtkDataSet*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkActor2D::GetProperty()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::PropagateUpdateExtent()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::Elevation(double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkFollower::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObject::Modified()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkFloatArray::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::EndTimer()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyData::GetNumberOfPolys()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPlaneSource::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderWindowInteractor::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `typeinfo for vtkWriter' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetReleaseDataFlag(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::SetInteractor(vtkRenderWindowInteractor*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorObserver::SetDefaultRenderer(vtkRenderer*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkOStreamWrapper::operator<<(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataSetAttributes::SetScalars(vtkDataArray*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCubeSource::SetBounds(double const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetInformation(vtkInformation*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::StartState(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::EndDolly()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDebugLeaksManager::vtkDebugLeaksManager()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTransformConcatenation::Identity()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetInputArrayToProcess(int, int, int, int, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderWindow::SetStereoType(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataSetAttributes::GetTCoords()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkLineSource::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::PrintTrailer(std::ostream&, vtkIndent)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::StartPan()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyData::GetData(vtkInformationVector*, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderer::ComputeVisiblePropBounds(double*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAOSDataArrayTemplate<long long>::GetPointer(long long)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkWriter::GetInput()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkMapper::GetInput()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkWriter::RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::StartUniformScale()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageFlip::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyData::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetInputConnection(int, vtkAlgorithmOutput*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::OrthogonalizeViewUp()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTransformConcatenation::Concatenate(double const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkFrustumSource::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::FillInputPortInformation(int, vtkInformation*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::UpdateWholeExtent()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::UpdateExtent(int const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataAlgorithm::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::~vtkObjectBase()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::INPUT_REQUIRED_DATA_TYPE()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageMapper::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::PrintSelf(std::ostream&, vtkIndent)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCubeSource::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::AddInputConnection(vtkAlgorithmOutput*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::ProcessRequest(vtkInformation*, vtkInformationVector**, vtkInformationVector*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::Update(int, vtkInformationVector*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::SetFocalPoint(double, double, double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::EndPan()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `operator<<(std::ostream&, vtkIndent const&)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkWriter::Write()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataAlgorithm::FillOutputPortInformation(int, vtkInformation*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkActor::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::~vtkInteractorStyle()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::AddInputData(vtkDataObject*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::EndRotate()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::StartTwoPointer()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyData::GetNumberOfStrips()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataNormals::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::ReportReferences(vtkGarbageCollector*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObject::InvokeEvent(unsigned long, void*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::AddInputDataObject(int, vtkDataObject*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderWindow::SetStereoRender(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::SetViewAngle(double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDebugLeaksManager::~vtkDebugLeaksManager()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderer::SetActiveCamera(vtkCamera*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkSmartPointerBase::operator=(vtkObjectBase*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::SetUserTransform(vtkHomogeneousTransform*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::StartDolly()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorObserver::ReleaseFocus()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCommand::UnRegister()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorObserver::ComputeDisplayToWorld(double, double, double, double*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderer::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkMatrix4x4::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::SetParallelProjection(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTensorGlyph::SetSourceData(vtkPolyData*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPlanes::SetFrustumPlanes(double*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyData::SetLines(vtkCellArray*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::Update()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkColorTransferFunction::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractionStyle_AutoInit_Destruct()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderWindow::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataSetMapper::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::GetInputAlgorithm(int, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::StopState()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkMapper::SetLookupTable(vtkScalarsToColors*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderWindowInteractor::SetRenderWindow(vtkRenderWindow*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderingFreeType_AutoInit_Construct()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetInputConnection(vtkAlgorithmOutput*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkOStreamWrapper::operator<<(char const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::PrintSelf(std::ostream&, vtkIndent)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTransformPolyDataFilter::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::SetParallelScale(double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkSTLReader::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageData::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPlaneSource::SetPoint2(double, double, double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorObserver::SetCurrentRenderer(vtkRenderer*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageMapper::GetInput()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkOStrStreamWrapper::rdbuf()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderWindowInteractor::DestroyTimer(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkMatrix4x4::DeepCopy(double*, double const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataSetAlgorithm::SetInputData(vtkDataSet*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::Delete()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::FillOutputPortInformation(int, vtkInformation*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataAlgorithm::ProcessRequest(vtkInformation*, vtkInformationVector**, vtkInformationVector*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageData::GetNumberOfScalarComponents()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkLODActor::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::EndUniformScale()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::ReportReferences(vtkGarbageCollector*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataSetAttributes::GetScalars()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataArray::InsertNextTuple3(double, double, double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataMapper::SetInputData(vtkPolyData*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorObserver::StartInteraction()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `typeinfo for vtkInteractorStyle' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkSmartPointerBase::vtkSmartPointerBase()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::UpdateInformation()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkWriter::ProcessRequest(vtkInformation*, vtkInformationVector**, vtkInformationVector*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::OnChar()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::AllocateOutputData(vtkImageData*, vtkInformation*, int*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataSetAttributes::SetTensors(vtkDataArray*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::ModifyRequest(vtkInformation*, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::StartRotate()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCellArray::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::ComputePipelineMTime(vtkInformation*, vtkInformationVector**, vtkInformationVector*, int, unsigned long*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetNthInputConnection(int, int, vtkAlgorithmOutput*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDoubleArray::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::InitializeObjectBase()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkColorTransferFunction::AddRGBPoint(double, double, double, double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorObserver::EndInteraction()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::StartAnimate()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataAlgorithm::FillInputPortInformation(int, vtkInformation*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetInputDataObject(int, vtkDataObject*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::CopyAttributeData(vtkImageData*, vtkImageData*, vtkInformationVector**)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkSmartPointerBase::vtkSmartPointerBase(vtkSmartPointerBase const&)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataMapper::GetInput()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithmOutput::GetProducer()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorObserver::ComputeWorldToDisplay(vtkRenderer*, double, double, double, double*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkActor2D::SetDisplayPosition(int, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAOSDataArrayTemplate<long long>::WritePointer(long long, long long)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyData::GetVerts()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCommand::vtkCommand()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::SetInputArrayToProcess(int, int, int, char const*, char const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkOStrStreamWrapper::str()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkTransform::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObjectBase::PrintHeader(std::ostream&, vtkIndent)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObject::AddObserver(unsigned long, vtkCommand*, float)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::GetOutputPort(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkWindowToImageFilter::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataAlgorithm::vtkPolyDataAlgorithm()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderingOpenGL2_AutoInit_Destruct()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObject::InvokeEvent(char const*, void*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkUnsignedCharArray::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPLYReader::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderingGL2PSOpenGL2_AutoInit_Construct()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInformation::Set(vtkInformationIntegerVectorKey*, int const*, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorObserver::ComputeWorldToDisplay(double, double, double, double*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkConeSource::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkOutputWindowDisplayErrorText(char const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkWindowToImageFilter::SetInput(vtkWindow*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkWriter::~vtkWriter()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkCamera::SetClippingRange(double, double)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkOBJReader::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataObject::SetPointDataActiveScalarInfo(vtkInformation*, int, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyDataAlgorithm::SetInputData(vtkDataObject*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkRenderer::RemoveAllLights()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataSetAttributes::SetNormals(vtkDataArray*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObject::RegisterInternal(vtkObjectBase*, int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPoints::New()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::EndTwoPointer()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::EndSpin()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::HighlightActor2D(vtkActor2D*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkInteractorStyle::SetEnabled(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkWriter::vtkWriter()' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkPolyData::SetVerts(vtkCellArray*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkObject::SetGlobalWarningDisplay(int)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkAlgorithm::UpdatePiece(int, int, int, int const*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkImageAlgorithm::CopyInputArrayAttributesToOutput(vtkInformation*, vtkInformationVector**, vtkInformationVector*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkDataSetAttributes::SetTCoords(vtkDataArray*)' /usr/bin/ld: /usr/lib/libopencv_viz.so.4.4.0: undefined reference to `vtkSmartPointerBase::vtkSmartPointerBase(vtkObjectBase*, vtkSmartPointerBase::NoReference const&)' collect2: error: ld returned 1 exit status make[2]: *** [CLI/CMakeFiles/Anime4KCPP_CLI.dir/build.make:159: bin/Anime4KCPP_CLI] Error 1 make[1]: *** [CMakeFiles/Makefile2:266: CLI/CMakeFiles/Anime4KCPP_CLI.dir/all] Error 2 make: *** [Makefile:149: all] Error 2

Losing Transparency

I'm using Anime4KCPP CLI 2.2.1

When Converting/Up-scaling/Filtering, transparency is not preserved.

Am I doing something wrong, or is this "working as intended"?

视频处理后输出的码率能否手动调整

刚刚试了试放大一个5分钟的lol游戏录像,源视频是1080P 60FPS AVC编码5Mbps,用ACNet算法+GPU加速+dxva选项放大到2160P,输出的文件体积高达15GB,码率400Mbps左右,这个体积有点恐怖,能不能手动调整视频处理输出后的码率,或者通过管道输出给ffmpeg、NVEncC等CLI软件进行压制

build Vapoursynth plugin under Linux

~/my/downloads >>> git clone https://github.com/TianZerL/Anime4KCPP && \                        
cd ./Anime4KCPP && \
export CPATH=/usr/include/vapoursynth && \
cmake . -D Build_VapourSynth_plugin=ON -D Build_GUI=OFF -D Build_CLI=OFF && \
make

Cloning into 'Anime4KCPP'...
remote: Enumerating objects: 116, done.
remote: Counting objects: 100% (116/116), done.
remote: Compressing objects: 100% (76/76), done.
remote: Total 1227 (delta 33), reused 89 (delta 28), pack-reused 1111
Receiving objects: 100% (1227/1227), 4.26 MiB | 6.91 MiB/s, done.
Resolving deltas: 100% (632/632), done.
-- The C compiler identification is GNU 10.1.0
-- The CXX compiler identification is GNU 10.1.0
-- Check for working C compiler: /bin/cc
-- Check for working C compiler: /bin/cc - works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /bin/c++
-- Check for working CXX compiler: /bin/c++ - works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found OpenCV: /usr (found version "4.3.0") 
-- Looking for CL_VERSION_2_2
-- Looking for CL_VERSION_2_2 - found
-- Found OpenCL: /usr/lib/libOpenCL.so (found version "2.2") 
-- Configuring done
-- Generating done
-- Build files have been written to: /home/deadnews/my/downloads/Anime4KCPP
Scanning dependencies of target Anime4KCPPCore
[  3%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/ACNet.cpp.o
[  7%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/ACNetHDN.cpp.o
[ 11%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4K.cpp.o
[ 14%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KCPP.cpp.o
[ 18%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KCPU.cpp.o
[ 22%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KCPUCNN.cpp.o
[ 25%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KGPU.cpp.o
/home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp: In static member function ‘static void Anime4KCPP::Anime4KGPU::initOpenCL()’:
/home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp:552:73: warning: ‘_cl_command_queue* clCreateCommandQueue(cl_context, cl_device_id, cl_command_queue_properties, cl_int*)’ is deprecated [-Wdeprecated-declarations]
  552 |             commandQueue = clCreateCommandQueue(context, device, 0, &err);
      |                                                                         ^
In file included from /home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/include/Anime4KGPU.h:11,
                 from /home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp:3:
/usr/include/CL/cl.h:1443:1: note: declared here
 1443 | clCreateCommandQueue(cl_context                     /* context */,
      | ^~~~~~~~~~~~~~~~~~~~
[ 29%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KGPUCNN.cpp.o
/home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/src/Anime4KGPUCNN.cpp: In static member function ‘static void Anime4KCPP::Anime4KGPUCNN::initOpenCL(Anime4KCPP::CNNType)’:
/home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/src/Anime4KGPUCNN.cpp:842:73: warning: ‘_cl_command_queue* clCreateCommandQueue(cl_context, cl_device_id, cl_command_queue_properties, cl_int*)’ is deprecated [-Wdeprecated-declarations]
  842 |             commandQueue = clCreateCommandQueue(context, device, 0, &err);
      |                                                                         ^
In file included from /home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/include/Anime4KGPUCNN.h:12,
                 from /home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/src/Anime4KGPUCNN.cpp:3:
/usr/include/CL/cl.h:1443:1: note: declared here
 1443 | clCreateCommandQueue(cl_context                     /* context */,
      | ^~~~~~~~~~~~~~~~~~~~
[ 33%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/CNN.cpp.o
[ 37%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/CNNProcessor.cpp.o
[ 40%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/VideoIO.cpp.o
[ 44%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/filterprocessor.cpp.o
[ 48%] Linking CXX shared library ../bin/libAnime4KCPPCore.so
[ 48%] Built target Anime4KCPPCore
Scanning dependencies of target Anime4KCPP_VapourSynth
[ 51%] Building CXX object VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/src/Anime4KCPPVS.cpp.o                                                                                               
[ 55%] Building CXX object VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/__/Anime4KCore/src/ACNet.cpp.o                                                                                       
[ 59%] Building CXX object VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/__/Anime4KCore/src/ACNetHDN.cpp.o                                                                                    
[ 62%] Building CXX object VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/__/Anime4KCore/src/Anime4K.cpp.o                                                                                     
[ 66%] Building CXX object VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/__/Anime4KCore/src/Anime4KCPP.cpp.o                                                                                  
[ 70%] Building CXX object VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/__/Anime4KCore/src/Anime4KCPU.cpp.o                                                                                  
[ 74%] Building CXX object VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/__/Anime4KCore/src/Anime4KCPUCNN.cpp.o
[ 77%] Building CXX object VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/__/Anime4KCore/src/Anime4KGPU.cpp.o
/home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp: In static member function ‘static void Anime4KCPP::Anime4KGPU::initOpenCL()’:
/home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp:552:73: warning: ‘_cl_command_queue* clCreateCommandQueue(cl_context, cl_device_id, cl_command_queue_properties, cl_int*)’ is deprecated [-Wdeprecated-declarations]
  552 |             commandQueue = clCreateCommandQueue(context, device, 0, &err);
      |                                                                         ^
In file included from /home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/include/Anime4KGPU.h:11,
                 from /home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp:3:
/usr/include/CL/cl.h:1443:1: note: declared here
 1443 | clCreateCommandQueue(cl_context                     /* context */,
      | ^~~~~~~~~~~~~~~~~~~~
[ 81%] Building CXX object VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/__/Anime4KCore/src/Anime4KGPUCNN.cpp.o
/home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/src/Anime4KGPUCNN.cpp: In static member function ‘static void Anime4KCPP::Anime4KGPUCNN::initOpenCL(Anime4KCPP::CNNType)’:
/home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/src/Anime4KGPUCNN.cpp:842:73: warning: ‘_cl_command_queue* clCreateCommandQueue(cl_context, cl_device_id, cl_command_queue_properties, cl_int*)’ is deprecated [-Wdeprecated-declarations]
  842 |             commandQueue = clCreateCommandQueue(context, device, 0, &err);
      |                                                                         ^
In file included from /home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/include/Anime4KGPUCNN.h:12,
                 from /home/deadnews/my/downloads/Anime4KCPP/Anime4KCore/src/Anime4KGPUCNN.cpp:3:
/usr/include/CL/cl.h:1443:1: note: declared here
 1443 | clCreateCommandQueue(cl_context                     /* context */,
      | ^~~~~~~~~~~~~~~~~~~~
[ 85%] Building CXX object VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/__/Anime4KCore/src/CNN.cpp.o
[ 88%] Building CXX object VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/__/Anime4KCore/src/CNNProcessor.cpp.o
[ 92%] Building CXX object VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/__/Anime4KCore/src/VideoIO.cpp.o
[ 96%] Building CXX object VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/__/Anime4KCore/src/filterprocessor.cpp.o
[100%] Linking CXX shared library ../bin/libAnime4KCPP_VapourSynth.so
/bin/ld: cannot find -lVapourSynth
collect2: error: ld returned 1 exit status
make[2]: *** [VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/build.make:339: bin/libAnime4KCPP_VapourSynth.so] Error 1
make[1]: *** [CMakeFiles/Makefile2:246: VapourSynth/CMakeFiles/Anime4KCPP_VapourSynth.dir/all] Error 2
make: *** [Makefile:104: all] Error 2

OS: Manjaro

How build Vapoursynth plugin under Linux?
«Solutions from google» didn't help me :)

Not understood the output path in the apk

I tried upscaling some drawing but an error pop saying that the app couldnt create folder
i tried changing path and everything but
i dont understand the way it work is it relative to something or is it from /storage

[GUI] Fix typo `Warning FFmpeg not fount`

Hello,

  1. It appears to be FFmpeg not found !
  2. How can I point the application to the FFmpeg of MPC-HC

Where do I need to Install the executable ffmpeg.exe.

  1. Extracting the ffmpeg project in the application holder appears to have no effect.
  2. The path to the ffmpeg executable will be best stored in settings.ini

Segmentation fault on Ubuntu 19.10

I'm trying to run Anime4KCPP in the Docker container that I've setup yesterday. The upscale seems to have completed successfully and the output file is generated. However it runs into a segmentation fault when finished.

image

Build Information

  • Docker image: ubuntu:19.10
  • libopencv-dev: 3.2.0+dfsg-6
  • cmake: 3.18.2
  • ocl-icd-opencl-dev: 2.2.11-1ubuntu1

编译问题,求助!

机器环境:Ubuntu 18.04
git clone 的最新的 v.2.3.0,参考了Cannot make,升级到了g++8,并在CMakeLists.txt中设置了-lstdc++fs
cmake.信息:

twinfish@Twinfish-PC:/media/data2/download/software/design/Anime4KCPP$ cmake .
-- The C compiler identification is GNU 8.4.0
-- The CXX compiler identification is GNU 8.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found OpenCV: /usr/local (found version "4.3.0")
-- Looking for CL_VERSION_2_2
-- Looking for CL_VERSION_2_2 - found
-- Found OpenCL: /usr/lib/x86_64-linux-gnu/libOpenCL.so (found version "2.2")
-- [download 100% complete]
-- [download 0% complete]
-- [download 7% complete]
-- [download 14% complete]
-- [download 21% complete]
-- [download 28% complete]
-- [download 35% complete]
-- [download 43% complete]
-- [download 50% complete]
-- [download 57% complete]
-- [download 64% complete]
-- [download 71% complete]
-- [download 78% complete]
-- [download 85% complete]
-- [download 92% complete]
-- [download 99% complete]
-- [download 100% complete]
-- Configuring done
-- Generating done
-- Build files have been written to: /media/data2/download/software/design/Anime4KCPP

make信息:

twinfish@Twinfish-PC:/media/data2/download/software/design/Anime4KCPP$ make
Scanning dependencies of target Anime4KCPPCore
[ 4%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/ACNet.cpp.o
[ 8%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/ACNetHDN.cpp.o
[ 12%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4K.cpp.o
[ 16%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KCPP.cpp.o
[ 20%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KCPU.cpp.o
[ 25%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KCPUCNN.cpp.o
[ 29%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KGPU.cpp.o
/media/data2/download/software/design/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp: In static member function ‘static void Anime4KCPP::Anime4KGPU::initOpenCL()’:
/media/data2/download/software/design/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp:583:73: warning: ‘_cl_command_queue* clCreateCommandQueue(cl_context, cl_device_id, cl_command_queue_properties, cl_int*)’ is deprecated [-Wdeprecated-declarations]
commandQueue = clCreateCommandQueue(context, device, 0, &err);
^
In file included from /media/data2/download/software/design/Anime4KCPP/Anime4KCore/include/Anime4KGPU.h:11,
from /media/data2/download/software/design/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp:3:
/usr/include/CL/cl.h:1443:1: note: declared here
clCreateCommandQueue(cl_context /* context /,
^~~~~~~~~~~~~~~~~~~~
/media/data2/download/software/design/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp:583:73: warning: ‘_cl_command_queue
clCreateCommandQueue(cl_context, cl_device_id, cl_command_queue_properties, cl_int*)’ is deprecated [-Wdeprecated-declarations]
commandQueue = clCreateCommandQueue(context, device, 0, &err);
^
In file included from /media/data2/download/software/design/Anime4KCPP/Anime4KCore/include/Anime4KGPU.h:11,
from /media/data2/download/software/design/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp:3:
/usr/include/CL/cl.h:1443:1: note: declared here
clCreateCommandQueue(cl_context /* context /,
^~~~~~~~~~~~~~~~~~~~
[ 33%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KGPUCNN.cpp.o
/media/data2/download/software/design/Anime4KCPP/Anime4KCore/src/Anime4KGPUCNN.cpp: In static member function ‘static void Anime4KCPP::Anime4KGPUCNN::initOpenCL(Anime4KCPP::CNNType)’:
/media/data2/download/software/design/Anime4KCPP/Anime4KCore/src/Anime4KGPUCNN.cpp:649:73: warning: ‘_cl_command_queue
clCreateCommandQueue(cl_context, cl_device_id, cl_command_queue_properties, cl_int*)’ is deprecated [-Wdeprecated-declarations]
commandQueue = clCreateCommandQueue(context, device, 0, &err);
^
In file included from /media/data2/download/software/design/Anime4KCPP/Anime4KCore/include/Anime4KGPUCNN.h:11,
from /media/data2/download/software/design/Anime4KCPP/Anime4KCore/src/Anime4KGPUCNN.cpp:3:
/usr/include/CL/cl.h:1443:1: note: declared here
clCreateCommandQueue(cl_context /* context /,
^~~~~~~~~~~~~~~~~~~~
/media/data2/download/software/design/Anime4KCPP/Anime4KCore/src/Anime4KGPUCNN.cpp:649:73: warning: ‘_cl_command_queue
clCreateCommandQueue(cl_context, cl_device_id, cl_command_queue_properties, cl_int*)’ is deprecated [-Wdeprecated-declarations]
commandQueue = clCreateCommandQueue(context, device, 0, &err);
^
In file included from /media/data2/download/software/design/Anime4KCPP/Anime4KCore/include/Anime4KGPUCNN.h:11,
from /media/data2/download/software/design/Anime4KCPP/Anime4KCore/src/Anime4KGPUCNN.cpp:3:
/usr/include/CL/cl.h:1443:1: note: declared here
clCreateCommandQueue(cl_context /* context */,
^~~~~~~~~~~~~~~~~~~~

[ 37%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/CNN.cpp.o
[ 41%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/CNNProcessor.cpp.o
[ 45%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/VideoIO.cpp.o
[ 50%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/filterprocessor.cpp.o
[ 54%] Linking CXX shared library ../bin/libAnime4KCPPCore.so
[ 54%] Built target Anime4KCPPCore
Scanning dependencies of target Anime4KCPP_CLI
[ 58%] Building CXX object CLI/CMakeFiles/Anime4KCPP_CLI.dir/src/main.cpp.o
[ 62%] Linking CXX executable ../bin/Anime4KCPP_CLI
CMakeFiles/Anime4KCPP_CLI.dir/src/main.cpp.o:在函数‘std::filesystem::__cxx11::path::path<char [5], std::filesystem::__cxx11::path>(char const (&) [5], std::filesystem::__cxx11::path::format) [clone .constprop.298]’中:
main.cpp:(.text+0x2cb):对‘std::filesystem::__cxx11::path::_M_split_cmpts()’未定义的引用
CMakeFiles/Anime4KCPP_CLI.dir/src/main.cpp.o:在函数‘std::filesystem::__cxx11::path::path<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::filesystem::__cxx11::path>(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::filesystem::__cxx11::path::format) [clone .constprop.300]’中:
main.cpp:(.text+0x332):对‘std::filesystem::__cxx11::path::_M_split_cmpts()’未定义的引用
CMakeFiles/Anime4KCPP_CLI.dir/src/main.cpp.o:在函数‘video2GIF(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&)’中:
main.cpp:(.text+0x867):对‘std::filesystem::__cxx11::path::_M_split_cmpts()’未定义的引用
main.cpp:(.text+0x86f):对‘std::filesystem::remove(std::filesystem::__cxx11::path const&)’未定义的引用
CMakeFiles/Anime4KCPP_CLI.dir/src/main.cpp.o:在函数‘std::filesystem::__cxx11::directory_entry::is_directory() const’中:
main.cpp:(.text._ZNKSt10filesystem7__cxx1115directory_entry12is_directoryEv[_ZNKSt10filesystem7__cxx1115directory_entry12is_directoryEv]+0x1d):对‘std::filesystem::status(std::filesystem::__cxx11::path const&)’未定义的引用
CMakeFiles/Anime4KCPP_CLI.dir/src/main.cpp.o:在函数‘std::filesystem::__cxx11::path::stem() const’中:
main.cpp:(.text._ZNKSt10filesystem7__cxx114path4stemEv[_ZNKSt10filesystem7__cxx114path4stemEv]+0x27):对‘std::filesystem::__cxx11::path::_M_find_extension() const’未定义的引用
main.cpp:(.text._ZNKSt10filesystem7__cxx114path4stemEv[_ZNKSt10filesystem7__cxx114path4stemEv]+0xf7):对‘std::filesystem::__cxx11::path::_M_split_cmpts()’未定义的引用
CMakeFiles/Anime4KCPP_CLI.dir/src/main.cpp.o:在函数‘std::filesystem::__cxx11::path::extension() const’中:
main.cpp:(.text._ZNKSt10filesystem7__cxx114path9extensionEv[_ZNKSt10filesystem7__cxx114path9extensionEv]+0x23):对‘std::filesystem::__cxx11::path::_M_find_extension() const’未定义的引用
main.cpp:(.text._ZNKSt10filesystem7__cxx114path9extensionEv[_ZNKSt10filesystem7__cxx114path9extensionEv]+0xc1):对‘std::filesystem::__cxx11::path::_M_split_cmpts()’未定义的引用
CMakeFiles/Anime4KCPP_CLI.dir/src/main.cpp.o:在函数‘std::filesystem::__cxx11::path::operator/=(std::filesystem::__cxx11::path const&)’中:
main.cpp:(.text.ZNSt10filesystem7__cxx114pathdVERKS1[ZNSt10filesystem7__cxx114pathdVERKS1]+0x14):对‘std::filesystem::__cxx11::path::has_root_directory() const’未定义的引用
main.cpp:(.text.ZNSt10filesystem7__cxx114pathdVERKS1[ZNSt10filesystem7__cxx114pathdVERKS1]+0x54):对‘std::filesystem::__cxx11::path::has_filename() const’未定义的引用
main.cpp:(.text.ZNSt10filesystem7__cxx114pathdVERKS1[ZNSt10filesystem7__cxx114pathdVERKS1]+0x76):对‘std::filesystem::__cxx11::path::_M_split_cmpts()’未定义的引用
CMakeFiles/Anime4KCPP_CLI.dir/src/main.cpp.o:在函数‘std::enable_if<std::_and<std::_not<std::is_same<std::remove_cv<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >::type, std::filesystem::__cxx11::path> >, std::_not<std::is_void<std::remove_pointer<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >::type> >, std::filesystem::__cxx11::path::__constructible_from<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, void> >::value, std::filesystem::__cxx11::path>::type& std::filesystem::__cxx11::path::append<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&)’中:
main.cpp:(.text.ZNSt10filesystem7__cxx114path6appendINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES1_EESB_ISt7is_voidINSt14remove_pointerISE_E4typeEEENS1_20__constructible_fromISE_vEEEE5valueES1_E4typeERKSE[ZNSt10filesystem7__cxx114path6appendINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES1_EESB_ISt7is_voidINSt14remove_pointerISE_E4typeEEENS1_20__constructible_fromISE_vEEEE5valueES1_E4typeERKSE]+0x5f):对‘std::filesystem::__cxx11::path::_M_split_cmpts()’未定义的引用
main.cpp:(.text.ZNSt10filesystem7__cxx114path6appendINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES1_EESB_ISt7is_voidINSt14remove_pointerISE_E4typeEEENS1_20__constructible_fromISE_vEEEE5valueES1_E4typeERKSE[ZNSt10filesystem7__cxx114path6appendINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES1_EESB_ISt7is_voidINSt14remove_pointerISE_E4typeEEENS1_20__constructible_fromISE_vEEEE5valueES1_E4typeERKSE]+0x67):对‘std::filesystem::__cxx11::path::has_root_directory() const’未定义的引用
main.cpp:(.text.ZNSt10filesystem7__cxx114path6appendINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES1_EESB_ISt7is_voidINSt14remove_pointerISE_E4typeEEENS1_20__constructible_fromISE_vEEEE5valueES1_E4typeERKSE[ZNSt10filesystem7__cxx114path6appendINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES1_EESB_ISt7is_voidINSt14remove_pointerISE_E4typeEEENS1_20__constructible_fromISE_vEEEE5valueES1_E4typeERKSE]+0x142):对‘std::filesystem::__cxx11::path::_M_split_cmpts()’未定义的引用
main.cpp:(.text.ZNSt10filesystem7__cxx114path6appendINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES1_EESB_ISt7is_voidINSt14remove_pointerISE_E4typeEEENS1_20__constructible_fromISE_vEEEE5valueES1_E4typeERKSE[ZNSt10filesystem7__cxx114path6appendINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES1_EESB_ISt7is_voidINSt14remove_pointerISE_E4typeEEENS1_20__constructible_fromISE_vEEEE5valueES1_E4typeERKSE]+0x194):对‘std::filesystem::__cxx11::path::has_root_directory() const’未定义的引用
main.cpp:(.text.ZNSt10filesystem7__cxx114path6appendINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES1_EESB_ISt7is_voidINSt14remove_pointerISE_E4typeEEENS1_20__constructible_fromISE_vEEEE5valueES1_E4typeERKSE[ZNSt10filesystem7__cxx114path6appendINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES1_EESB_ISt7is_voidINSt14remove_pointerISE_E4typeEEENS1_20__constructible_fromISE_vEEEE5valueES1_E4typeERKSE]+0x1a0):对‘std::filesystem::__cxx11::path::has_filename() const’未定义的引用
main.cpp:(.text.ZNSt10filesystem7__cxx114path6appendINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES1_EESB_ISt7is_voidINSt14remove_pointerISE_E4typeEEENS1_20__constructible_fromISE_vEEEE5valueES1_E4typeERKSE[ZNSt10filesystem7__cxx114path6appendINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEERNSt9enable_ifIXsrSt6__and_IJSt6__not_ISt7is_sameINSt9remove_cvIT_E4typeES1_EESB_ISt7is_voidINSt14remove_pointerISE_E4typeEEENS1_20__constructible_fromISE_vEEEE5valueES1_E4typeERKSE]+0x1c6):对‘std::filesystem::__cxx11::path::_M_split_cmpts()’未定义的引用
CMakeFiles/Anime4KCPP_CLI.dir/src/main.cpp.o:在函数‘main’中:
main.cpp:(.text.startup+0x1822):对‘std::filesystem::status(std::filesystem::__cxx11::path const&)’未定义的引用
main.cpp:(.text.startup+0x1b7d):对‘std::filesystem::status(std::filesystem::__cxx11::path const&)’未定义的引用
main.cpp:(.text.startup+0x1c8d):对‘std::filesystem::__cxx11::path::replace_extension(std::filesystem::__cxx11::path const&)’未定义的引用
main.cpp:(.text.startup+0x1d78):对‘std::filesystem::status(std::filesystem::__cxx11::path const&)’未定义的引用
main.cpp:(.text.startup+0x1f47):对‘std::filesystem::remove(std::filesystem::__cxx11::path const&)’未定义的引用
main.cpp:(.text.startup+0x2043):对‘std::filesystem::status(std::filesystem::__cxx11::path const&)’未定义的引用
main.cpp:(.text.startup+0x2059):对‘std::filesystem::__cxx11::path::parent_path() const’未定义的引用
main.cpp:(.text.startup+0x20bc):对‘std::filesystem::create_directories(std::filesystem::__cxx11::path const&)’未定义的引用
main.cpp:(.text.startup+0x20d6):对‘std::filesystem::__cxx11::directory_iterator::directory_iterator(std::filesystem::__cxx11::path const&, std::filesystem::directory_options, std::error_code*)’未定义的引用
main.cpp:(.text.startup+0x215f):对‘std::filesystem::__cxx11::directory_iterator::operator*() const’未定义的引用
main.cpp:(.text.startup+0x21c2):对‘std::filesystem::__cxx11::path::replace_extension(std::filesystem::__cxx11::path const&)’未定义的引用
main.cpp:(.text.startup+0x238e):对‘std::filesystem::__cxx11::directory_iterator::operator++()’未定义的引用
main.cpp:(.text.startup+0x23bc):对‘std::filesystem::status(std::filesystem::__cxx11::path const&)’未定义的引用
main.cpp:(.text.startup+0x23d2):对‘std::filesystem::__cxx11::path::parent_path() const’未定义的引用
main.cpp:(.text.startup+0x2435):对‘std::filesystem::create_directories(std::filesystem::__cxx11::path const&)’未定义的引用
main.cpp:(.text.startup+0x244f):对‘std::filesystem::__cxx11::directory_iterator::directory_iterator(std::filesystem::__cxx11::path const&, std::filesystem::directory_options, std::error_code*)’未定义的引用
main.cpp:(.text.startup+0x24b0):对‘std::filesystem::__cxx11::directory_iterator::operator*() const’未定义的引用
main.cpp:(.text.startup+0x24d5):对‘std::filesystem::__cxx11::directory_iterator::operator++()’未定义的引用
main.cpp:(.text.startup+0x2567):对‘std::filesystem::remove(std::filesystem::__cxx11::path const&)’未定义的引用
main.cpp:(.text.startup+0x2690):对‘std::filesystem::__cxx11::path::replace_extension(std::filesystem::__cxx11::path const&)’未定义的引用
main.cpp:(.text.startup+0x28f6):对‘std::filesystem::remove(std::filesystem::__cxx11::path const&)’未定义的引用
main.cpp:(.text.startup+0x291a):对‘std::filesystem::remove(std::filesystem::__cxx11::path const&)’未定义的引用
collect2: error: ld returned 1 exit status
CLI/CMakeFiles/Anime4KCPP_CLI.dir/build.make:139: recipe for target 'bin/Anime4KCPP_CLI' failed
make[2]: *** [bin/Anime4KCPP_CLI] Error 1
CMakeFiles/Makefile2:250: recipe for target 'CLI/CMakeFiles/Anime4KCPP_CLI.dir/all' failed
make[1]: *** [CLI/CMakeFiles/Anime4KCPP_CLI.dir/all] Error 2
Makefile:86: recipe for target 'all' failed
make: *** [all] Error 2

看起来好像一大堆定义出错,求助大婶,谢谢!~

图片中出现横线

如题, 偶发bug, 图片中会出现这样的横线, 没有任何出现规律, 随机发生, 怀疑与图片绘制有关???
无论是否启用ACNet算法都会出现这种横条.
测试版本: 自行编译的863648bfbf621bf3d9bea1ed4e167de0b7affc71 以及 v2.0.0 release
测试时的软件设置:

-z 2 -w -q -H

平台:

- Windows 10 专业版 1909
- i7-8550U
- RX 550

2 - 副本 (6)_waifu2x_2x_jpg
2 - 副本 (8)_waifu2x_2x_jpg
Snipaste_2020-06-12_17-56-56

Cannot make

I tried to build this on google colab but I got the following error:

Scanning dependencies of target Anime4KCPPCore
[  6%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4K.cpp.o
[ 12%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KCPP.cpp.o
[ 18%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KCPU.cpp.o
[ 25%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KGPU.cpp.o
/root/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp: In static member function ‘static void Anime4KCPP::Anime4KGPU::initOpenCL()’:
/root/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp:548:73: warning: ‘_cl_command_queue* clCreateCommandQueue(cl_context, cl_device_id, cl_command_queue_properties, cl_int*)’ is deprecated [-Wdeprecated-declarations]
             commandQueue = clCreateCommandQueue(context, device, 0, &err);
                                                                         ^
In file included from /root/Anime4KCPP/Anime4KCore/include/Anime4KGPU.h:11:0,
                 from /root/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp:3:
/usr/include/CL/cl.h:1443:1: note: declared here
 clCreateCommandQueue(cl_context                     /* context */,
 ^~~~~~~~~~~~~~~~~~~~
[ 31%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/VideoIO.cpp.o
/root/Anime4KCPP/Anime4KCore/src/VideoIO.cpp: In member function ‘bool Anime4KCPP::VideoIO::openWriter(const string&, Anime4KCPP::CODEC, const Size&)’:
/root/Anime4KCPP/Anime4KCore/src/VideoIO.cpp:71:100: error: no matching function for call to ‘cv::VideoWriter::open(const string&, cv::VideoCaptureAPIs, int, double&, const Size&)’
         writer.open(dstFile, cv::CAP_FFMPEG, cv::VideoWriter::fourcc('m', 'p', '4', 'v'), fps, size);
                                                                                                    ^
In file included from /usr/include/opencv2/highgui.hpp:51:0,
                 from /usr/include/opencv2/opencv.hpp:65,
                 from /root/Anime4KCPP/Anime4KCore/include/VideoIO.h:3,
                 from /root/Anime4KCPP/Anime4KCore/src/VideoIO.cpp:1:
/usr/include/opencv2/videoio.hpp:863:26: note: candidate: virtual bool cv::VideoWriter::open(const cv::String&, int, double, cv::Size, bool)
     CV_WRAP virtual bool open(const String& filename, int fourcc, double fps,
                          ^~~~
/usr/include/opencv2/videoio.hpp:863:26: note:   no known conversion for argument 4 from ‘double’ to ‘cv::Size {aka cv::Size_<int>}’
/root/Anime4KCPP/Anime4KCore/src/VideoIO.cpp:91:100: error: no matching function for call to ‘cv::VideoWriter::open(const string&, cv::VideoCaptureAPIs, int, double&, const Size&)’
         writer.open(dstFile, cv::CAP_FFMPEG, cv::VideoWriter::fourcc('a', 'v', 'c', '1'), fps, size);
                                                                                                    ^
In file included from /usr/include/opencv2/highgui.hpp:51:0,
                 from /usr/include/opencv2/opencv.hpp:65,
                 from /root/Anime4KCPP/Anime4KCore/include/VideoIO.h:3,
                 from /root/Anime4KCPP/Anime4KCore/src/VideoIO.cpp:1:
/usr/include/opencv2/videoio.hpp:863:26: note: candidate: virtual bool cv::VideoWriter::open(const cv::String&, int, double, cv::Size, bool)
     CV_WRAP virtual bool open(const String& filename, int fourcc, double fps,
                          ^~~~
/usr/include/opencv2/videoio.hpp:863:26: note:   no known conversion for argument 4 from ‘double’ to ‘cv::Size {aka cv::Size_<int>}’
/root/Anime4KCPP/Anime4KCore/src/VideoIO.cpp:100:100: error: no matching function for call to ‘cv::VideoWriter::open(const string&, cv::VideoCaptureAPIs, int, double&, const Size&)’
         writer.open(dstFile, cv::CAP_FFMPEG, cv::VideoWriter::fourcc('v', 'p', '0', '9'), fps, size);
                                                                                                    ^
In file included from /usr/include/opencv2/highgui.hpp:51:0,
                 from /usr/include/opencv2/opencv.hpp:65,
                 from /root/Anime4KCPP/Anime4KCore/include/VideoIO.h:3,
                 from /root/Anime4KCPP/Anime4KCore/src/VideoIO.cpp:1:
/usr/include/opencv2/videoio.hpp:863:26: note: candidate: virtual bool cv::VideoWriter::open(const cv::String&, int, double, cv::Size, bool)
     CV_WRAP virtual bool open(const String& filename, int fourcc, double fps,
                          ^~~~
/usr/include/opencv2/videoio.hpp:863:26: note:   no known conversion for argument 4 from ‘double’ to ‘cv::Size {aka cv::Size_<int>}’
/root/Anime4KCPP/Anime4KCore/src/VideoIO.cpp:109:100: error: no matching function for call to ‘cv::VideoWriter::open(const string&, cv::VideoCaptureAPIs, int, double&, const Size&)’
         writer.open(dstFile, cv::CAP_FFMPEG, cv::VideoWriter::fourcc('h', 'e', 'v', '1'), fps, size);
                                                                                                    ^
In file included from /usr/include/opencv2/highgui.hpp:51:0,
                 from /usr/include/opencv2/opencv.hpp:65,
                 from /root/Anime4KCPP/Anime4KCore/include/VideoIO.h:3,
                 from /root/Anime4KCPP/Anime4KCore/src/VideoIO.cpp:1:
/usr/include/opencv2/videoio.hpp:863:26: note: candidate: virtual bool cv::VideoWriter::open(const cv::String&, int, double, cv::Size, bool)
     CV_WRAP virtual bool open(const String& filename, int fourcc, double fps,
                          ^~~~
/usr/include/opencv2/videoio.hpp:863:26: note:   no known conversion for argument 4 from ‘double’ to ‘cv::Size {aka cv::Size_<int>}’
/root/Anime4KCPP/Anime4KCore/src/VideoIO.cpp:118:100: error: no matching function for call to ‘cv::VideoWriter::open(const string&, cv::VideoCaptureAPIs, int, double&, const Size&)’
         writer.open(dstFile, cv::CAP_FFMPEG, cv::VideoWriter::fourcc('a', 'v', '0', '1'), fps, size);
                                                                                                    ^
In file included from /usr/include/opencv2/highgui.hpp:51:0,
                 from /usr/include/opencv2/opencv.hpp:65,
                 from /root/Anime4KCPP/Anime4KCore/include/VideoIO.h:3,
                 from /root/Anime4KCPP/Anime4KCore/src/VideoIO.cpp:1:
/usr/include/opencv2/videoio.hpp:863:26: note: candidate: virtual bool cv::VideoWriter::open(const cv::String&, int, double, cv::Size, bool)
     CV_WRAP virtual bool open(const String& filename, int fourcc, double fps,
                          ^~~~
/usr/include/opencv2/videoio.hpp:863:26: note:   no known conversion for argument 4 from ‘double’ to ‘cv::Size {aka cv::Size_<int>}’
Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/build.make:134: recipe for target 'Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/VideoIO.cpp.o' failed
make[2]: *** [Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/VideoIO.cpp.o] Error 1
CMakeFiles/Makefile2:177: recipe for target 'Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/all' failed
make[1]: *** [Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/all] Error 2
Makefile:103: recipe for target 'all' failed
make: *** [all] Error 2

What is it that I am missing??

Doesn't build on macOS

macOS has problems with libomp which I solved by using this. But it seems Anime4KCPP also needs OpenCL 2.0, which is not supported by Apple drivers:

[  7%] Building CXX object Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KGPU.cpp.o
clang-10: warning: -lpthread: 'linker' input unused [-Wunused-command-line-argument]
/Users/evar/Base/_Code/Misc/Anime4KCPP/Anime4KCore/src/Anime4KGPU.cpp:615:20: error: use of undeclared identifier
      'clCreateCommandQueueWithProperties'; did you mean 'clCreateCommandQueueWithPropertiesAPPLE'?
    commandQueue = clCreateCommandQueueWithProperties(context, device, nullptr, &err);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                   clCreateCommandQueueWithPropertiesAPPLE
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/OpenCL.framework/Headers/cl_ext.h:271:3: note:
      'clCreateCommandQueueWithPropertiesAPPLE' declared here
  clCreateCommandQueueWithPropertiesAPPLE (cl_context                          /* context */,
  ^
1 error generated.
make[2]: *** [Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/src/Anime4KGPU.cpp.o] Error 1
make[1]: *** [Anime4KCore/CMakeFiles/Anime4KCPPCore.dir/all] Error 2
make: *** [all] Error 2

I could not find a workaround for this one. There is a pocl driver which might solve this but it seems it has not been maintained lately and is no longer installable on macOS. brewsci/science/pocl of homebrew certainly no longer works. It might be possible for you to stop using the new API (my searches seemed to indicate this clCreateCommandQueueWithProperties is not all that essential). If not, I guess you should update the readme to point out that this does not work on macOS.

Anime4KCPP_GUI 音画不同步问题

我尝试用Anime4KCPP_GUI对20min的480P动漫进行超分辨率,设置为“平衡”,放大两倍。
发现无论是CPU单独计算,还是GPU加速,生成的动漫都会出现音画不同步,具体情形如下:
1、音轨速度正常
2、画面播放速度大约在1.5倍速。
由此造成音画不同步。

然后,我测试了4-5min的动漫MV,720P放大两倍。用CPU单独计算,音画基本是同步的。简单说画面播放速度正常。

使用笔记本,win 10 1709 , i7 8750H, 1050ti, 16G RAM。

请问作者能否复现该问题?这是我电脑的bug,还是win10 的bug,或者软件的bug?作者给的测试样例里面是1min32s的视频,没有涉及到长视频的测试,我也不确定问题在哪里。

另外,有么有可能将这个Anime4KCPP嵌入到播放器呢?作者给计算时间一般短于视频时长,尤其是有GPU加速后,时间更短。说明做到实时超分辨率是可能的。如果可以实时,嵌入播放器岂不美哉?

感谢作者的辛劳!

Vapoursynth: Supported color format confusion.

Before the last updates I assumed Anime4KCPP would:
a. always support RGB24
and
b. add YUV444P8 support when ACNet was enabled.

Now with https://github.com/TianZerL/Anime4KCPP/wiki/VapourSynth-plugin and the changelog from https://github.com/TianZerL/Anime4KCPP/releases/tag/v2.5.0 I'm confused about what color formats are supported.

Could you please list what color formats are supported, with:
(I guess: "Gray16, Gray8, Grays, RGB24, RGB48, RGBS, YUV444P8, YUV444P16, YUV444PS, YUV422P8, YUV420P16, YUV402P8, YUV420P16" are the potentially supported color formats.)

  • "ACNet=0,safeMode=1": ?
  • "ACNet=1,safeMode=1": ?
  • "ACNet=0,safeMode=0": ?
  • "ACNet=1,safeMode=0": ?

Thanks!

running the cli gives me error on both with gpu and with out gpu....

I have a AMD Radeon 520

with out -q

error:-
Processing... Total process time: 0.184 s terminate called after throwing an instance of 'cv::Exception' what(): OpenCV(4.4.0) /build/opencv/src/opencv-4.4.0/modules/imgcodecs/src/loadsave.cpp:667: error: (-2:Unspecified error) could not find a writer for the specified extension in function 'imwrite_'

with -q

error;-

`An error occurred.

Error type: GPU

Error message :
Kernel build error

Additional error code :
-11

Additional information :
input.cl:9:8: error: OpenCL C version 1.1 does not support the 'static' storage class specifier
input.cl:14:8: error: OpenCL C version 1.1 does not support the 'static' storage class specifier
input.cl:20:8: error: OpenCL C version 1.1 does not support the 'static' storage class specifier
input.cl:34:13: error: no matching function for call to 'get_image_width'
/usr/include/clc/image/image.h:1:29: note: candidate function not viable: no known conversion from '__private __write_only image2d_t' to '__private __read_only image2d_t' for 1st argument
/usr/include/clc/image/image.h:2:29: note: candidate function not viable: no known conversion from '__private __write_only image2d_t' to '__private __read_only image3d_t' for 1st argument
input.cl:34:45: error: no matching function for call to 'get_image_height'
/usr/include/clc/image/image.h:4:29: note: candidate function not viable: no known conversion from '__private __write_only image2d_t' to '__private __read_only image2d_t' for 1st argument
/usr/include/clc/image/image.h:5:29: note: candidate function not viable: no known conversion from '__private __write_only image2d_t' to '__private __read_only image3d_t' for 1st argument
input.cl:62:18: error: passing '__private __write_only image2d_t' to parameter of incompatible type '__read_only image2d_t'
/usr/include/clc/image/image.h:19:24: note: passing argument to parameter 'image' here
input.cl:68:13: error: no matching function for call to 'get_image_width'
/usr/include/clc/image/image.h:1:29: note: candidate function not viable: no known conversion from '__private __write_only image2d_t' to '__private __read_only image2d_t' for 1st argument
/usr/include/clc/image/image.h:2:29: note: candidate function not viable: no known conversion from '__private __write_only image2d_t' to '__private __read_only image3d_t' for 1st argument
input.cl:68:45: error: no matching function for call to 'get_image_height'
/usr/include/clc/image/image.h:4:29: note: candidate function not viable: no known conversion from '__private __write_only image2d_t' to '__private __read_only image2d_t' for 1st argument
/usr/include/clc/image/image.h:5:29: note: candidate function not viable: no known conversion from '__private __write_only image2d_t' to '__private __read_only image3d_t' for 1st argument
input.cl:78:18: error: passing '__private __write_only image2d_t' to parameter of incompatible type '__read_only image2d_t'
/usr/include/clc/image/image.h:19:24: note: passing argument to parameter 'image' here
input.cl:153:18: error: passing '__private __write_only image2d_t' to parameter of incompatible type '__read_only image2d_t'
/usr/include/clc/image/image.h:19:24: note: passing argument to parameter 'image' here
input.cl:180:18: error: passing '__private __write_only image2d_t' to parameter of incompatible type '__read_only image2d_t'
/usr/include/clc/image/image.h:19:24: note: passing argument to parameter 'image' here
input.cl:209:22: error: passing '__private __write_only image2d_t' to parameter of incompatible type '__read_only image2d_t'
/usr/include/clc/image/image.h:19:24: note: passing argument to parameter 'image' here
input.cl:218:22: error: passing '__private __write_only image2d_t' to parameter of incompatible type '__read_only image2d_t'
/usr/include/clc/image/image.h:19:24: note: passing argument to parameter 'image' here
input.cl:228:22: error: passing '__private __write_only image2d_t' to parameter of incompatible type '__read_only image2d_t'
/usr/include/clc/image/image.h:19:24: note: passing argument to parameter 'image' here
input.cl:237:22: error: passing '__private __write_only image2d_t' to parameter of incompatible type '__read_only image2d_t'
/usr/include/clc/image/image.h:19:24: note: passing argument to parameter 'image' here
input.cl:247:22: error: passing '__private __write_only image2d_t' to parameter of incompatible type '__read_only image2d_t'
/usr/include/clc/image/image.h:19:24: note: passing argument to parameter 'image' here
input.cl:256:22: error: passing '__private __write_only image2d_t' to parameter of incompatible type '__read_only image2d_t'
/usr/include/clc/image/image.h:19:24: note: passing argument to parameter 'image' here
input.cl:266:22: error: passing '__private __write_only image2d_t' to parameter of incompatible type '__read_only image2d_t'
/usr/include/clc/image/image.h:19:24: note: passing argument to parameter 'image' here
input.cl:274:22: error: passing '__private __write_only image2d_t' to parameter of incompatible type '__read_only image2d_t'
/usr/include/clc/image/image.h:19:24: note: passing argument to parameter 'image' here
input.cl:279:18: error: passing '__private __write_only image2d_t' to parameter of incompatible type '__read_only image2d_t'
/usr/include/clc/image/image.h:19:24: note: passing argument to parameter 'image' here
`

Vapoursynth output has some problems

VSR50, win10 x64, Ryzen 2600, GTX 1070
On the right side is always a border with strange output

clip = 480p DVD ntsc source
clip = mvf.ToRGB(clip)
clip = core.anime4kcpp.Anime4KCPP(clip,zoomFactor=2, GPUMode = 1)

image

Ignore GUI blank output folder selection

Maybe consider not to overwrite the current output path when no folder is selected.
The file select function will return an empty string (at least PyQt5) if no folder is selected. Ignore and return if it is empty.

image

无法编译CLI

错误信息:
[download 100% complete]
CMake Error at cmake/ThirdPartyForCLI.cmake:21 (file):
file DOWNLOAD HASH mismatch

for file: [C:/Users/ccicnce113424/Desktop/Anime4KCPP-master/ThirdParty/include/cmdline.h]
  expected hash: [da2d7322f5992f832a62a6c95cddfe6565b766ac]
    actual hash: [da39a3ee5e6b4b0d3255bfef95601890afd80709]
         status: [6;"Couldn't resolve host name"]

Call Stack (most recent call first):
CLI/CMakeLists.txt:13 (include)

Configuring incomplete, errors occurred!
这个文件的hash好像错了

Android app errors

Failed to create folders (always) and failed to initialize video writer (shows only when i try to start it on
any videos).
I'm trying to change preference and output folder, but it does nothing. It finishes running on pictures, but first error shows after finished message. Also if quit for app with quit button, at next start gpu modes can't be chosen and shows as unsupported. And more thing, after change screen orientation all settings and selecting files resets.

Compiling error on Ubuntu 19.10: cannot convert 'double' to 'cv::Size'

Abstract

I'm trying to build a new Docker image for Video2X with Anime4KCPP added into the mix, but I quickly ran into some issues that I couldn't solve after some Googling and fiddling around. I'm by all means no C/CPP expert, so I decided to make a post here. I hope I'm not getting this error due to my stupid negligence somewhere. asciinema cast file is attached at the bottom for easy playback.

Thank you for your work and your time.

Description

cmake runs successfully without problems, but when the program gets compiled with make -j32, it trips over several references to fps which should be converted to cv::Size ('cv::Size_'). Below is one of the errors as an example.

anime4kcpp/Anime4KCore/src/VideoIO.cpp: In member function 'bool Anime4KCPP::VideoIO::openWriter(const string&, Anime4KCPP::CODEC, const Size&, double)':
/anime4kcpp/Anime4KCore/src/VideoIO.cpp:76:91: error: cannot convert 'double' to 'cv::Size' {aka 'cv::Size_<int>'}
   76 |         writer.open(dstFile, cv::CAP_FFMPEG, cv::VideoWriter::fourcc('m', 'p', '4', 'v'), fps, size);
      |                                                                                           ^~~
      |                                                                                           |
      |                                                                                           double

The following is a screenshot just in case the code block isn't convenient to look at.

image

Build Script

Below is the section in the script I used to build Anime4KCPP.

# install the latest cmake for compiling Anime4KCPP
aria2c https://github.com/Kitware/CMake/releases/download/v3.18.2/cmake-3.18.2-Linux-x86_64.sh -o "$TEMP/cmake.sh"
mkdir /cmake
bash "$TEMP/cmake.sh" --prefix=/cmake --skip-license

# install Anime4KCPP
apt-fast install -y --no-install-recommends libopencv-dev opencl-dev libqt5svg5-dev qttools5-dev
git clone --recurse-submodules --depth=1 --progress https://github.com/TianZerL/Anime4KCPP.git $TEMP/anime4kcpp
mkdir -v $TEMP/anime4kcpp/build
cd $TEMP/anime4kcpp/build
/cmake/bin/cmake -DBuild_GUI=OFF ..
make -j$(nproc)
mv -v $TEMP/anime4kcpp/build $INSTALLATION_PATH/video2x/src/dependencies/anime4kcpp
mv -v $TEMP/anime4kcpp/models_rgb $INSTALLATION_PATH/video2x/src/dependencies/anime4kcpp/models_rgb

Building From Release

To verify that this issue also applies to the releases, I tried compiling from the latest (2.3.0) release. However, cmake fails on a SHA1 hash check for some reason. I don't think it's worth it for me to investigate it further so here's the screenshot attached.

image

Appendix

I have also attached the asciinema cast file and the full log file with this issue. You can play it back to see the exact build process in real time. Sorry I had to ZIP them since GitHub doesn't accept the file formats provided.

anime4kcpp_build.zip

OpenCL dependency for CPU only?

Running the CLI version of Anime4KCPP on a machine that doesn't have OpenCL available crashes on launch.

This is present on 1.8.0 and 1.8.1 at least.
To reproduce:

  • Launch a Windows Sandbox instance.
  • Copy Anime4KCPP files over.
  • Execute

CMD调用时,如果启用GPU加速,则无法在调用时带上路径

如题,若启用GPU加速,则在使用CMD命令行调用CLI时带上完整路径后会提示:

Read kernel error

带上完整路径的意思是这样调用软件:

"D:/xxxx/新建文件夹/Anime4K/Anime4K.exe" -i "D:/xxxx/xxxx/10.png" -o "D:/xxxxx/xxxx/xxxx/10.png" -z 2 -p 1 -n 1 -c 0.30 -g 1.00 -q

即在调用软件时,带上了软件所在的完整路径D:/xxxx/新建文件夹/Anime4K/Anime4K.exe后再启用GPU加速,就会提示Read kernel error.

如果把完整路径去掉,在软件所在位置为初始路径调用命令行,其他参数不变,就不会出现错误,即像下面这样:

Anime4K.exe -i "D:/xxxx/xxxx/10.png" -o "D:/xxxxx/xxxx/xxxx/10.png" -z 2 -p 1 -n 1 -c 0.30 -g 1.00 -q

如果其他参数不变,关闭GPU加速,依旧使用完整路径调用软件,则可以正常运行处理图片。

"D:/xxxx/新建文件夹/Anime4K/Anime4K.exe" -i "D:/xxxx/xxxx/10.png" -o "D:/xxxxx/xxxx/xxxx/10.png" -z 2 -p 1 -n 1 -c 0.30 -g 1.00

Training ACNet

Hi friend. It's possible training the ai for better results?
If this is not currently possible, could that be a good feature?

Crash when enable ACNET & GPU acceleration For ACNET

macOS 10.15.5 + AMD Radeon Pro Vega 48

image

单独选ACNET+HDN没有问题。如果想更多的信息排查,用中文沟通就行。

log:

qt.qpa.fonts: Populating font family aliases took 294 ms. Replace uses of missing font family "Consolas" with one that exists to avoid this cost. 
ffmpeg version 4.3 Copyright (c) 2000-2020 the FFmpeg developers
built with Apple clang version 11.0.3 (clang-1103.0.32.62)
configuration: --prefix=/usr/local/Cellar/ffmpeg/4.3_1 --enable-shared --enable-pthreads --enable-version3 --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libspeex --enable-libsoxr --enable-videotoolbox --disable-libjack --disable-indev=jack
libavutil      56. 51.100 / 56. 51.100
libavcodec     58. 91.100 / 58. 91.100
libavformat    58. 45.100 / 58. 45.100
libavdevice    58. 10.100 / 58. 10.100
libavfilter     7. 85.100 /  7. 85.100
libavresample   4.  0.  0 /  4.  0.  0
libswscale      5.  7.100 /  5.  7.100
libswresample   3.  7.100 /  3.  7.100
libpostproc    55.  7.100 / 55.  7.100
x265 [info]: HEVC encoder version 3.4
x265 [info]: build info [Mac OS X][clang 11.0.3][64 bit] 8bit+10bit+12bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast LZCNT SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
x265 [info]: Main profile, Level-6.2 (High tier)
x265 [info]: Thread pool created using 16 threads
x265 [info]: Slices                              : 1
x265 [info]: frame threads / pool features       : 1 / wpp(34 rows)
x265 [info]: Coding QT: max CU size, min CU size : 64 / 8
x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra
x265 [info]: ME / range / subpel / merge         : hex / 57 / 2 / 3
x265 [info]: Keyframe min / max / scenecut / bias  : 1 / 12 / 40 / 5.00 
x265 [info]: Lookahead / bframes / badapt        : 20 / 4 / 2
x265 [info]: b-pyramid / weightp / weightb       : 1 / 1 / 0
x265 [info]: References / ref-limit  cu / depth  : 3 / off / on
x265 [info]: AQ: mode / str / qg-size / cu-tree  : 2 / 1.0 / 32 / 1
x265 [info]: Rate Control / qCompress            : ABR-497664 kbps / 0.60
x265 [info]: tools: rd=3 psy-rd=2.00 early-skip rskip mode=1 signhide tmvp
x265 [info]: tools: b-intra strong-intra-smoothing lslices=8 deblock sao
libc++abi.dylib: terminating with uncaught exception of type char const*
zsh: abort      /Users/tdt/Documents/Code/GitHub/Anime4KCPP/bin/Anime4KCPP_GUI

中文文件名支持

目前GUI仅支持英文字母及符号,希望加入中文文件名、路径的支持

Add support for directory of photos with Threads CLI option

Is is possible to add threading support for a directory of photos similar to how you can do with videos?

Currently if I wanted to bulk process a lot of photos I would have to script it in order to use the CLI, being able to point the CLI at a directory and having it behave similarly to processing a video would be helpful for any sort of bulk processing.

无法定位到程序入口(输入点)

我在搞Waifu2x的时候原本想用Anime4K的(我的电脑之前支持GPU的),结果现在兼容性测试Anime4K的CPU和GPU都过不了,图
image
然后我点开程序的Anime4K目录运行Anime4K_waifu2xEX.exe发现错误
image
然后我就到Anime4KCPP的Github页面下载了Anime4KCPP的GUI版本,也是同样的错误
image
我的显卡很老,Intel Graphics HD 4000核显,所以要效率比较高的方式
系统是Win10 2004专业工作站版本
image
显卡驱动是最新的

Missing dll files

Hi,

The release archive is missing these dll files

libgcc_s_seh-1.dll
libstdc++-6.dll
libwinpthread-1.dll

Thanks.

Avisynth Version - zoomFactor is INT, so only integer scaling allowed

The directShow version of this amazing upscaler allows not integer decimal values for scaling, so you can obtain the exact amount of scaling to fit your monitor.

For example.. from a 640x480 DVD-source I can go to FullHD with a zoomFactor of 2.25, while if it's PAL (720x576) I can use 1.875 to obtain the exact amount of scaling I require.

The Avisynth version of Anime4KCPP uses an INT value for this parameter, so I can't have precise control on the output resolution (as I have with the DS version) when processing some video clips to create upscaled/enhanced version of them through my Avisynth scripts.

Since the DS filter supports decimal values.. it would be great having this possibility in the Avisynth version too.

Allowing directory input and output

Could you please consider allowing the input and output to be directories?
For if I'm processing a directory containing images right now, I'll need to call Anime4KCPP's binary for each of the files.

无法兼容带有中文字符的路径

如题, 相同路径下的同一文件, v1.8.0版本无法正常加载, 反之v1.7.0则可以正常加载, 应该是bug
处理参数等条件变量均一致

PS E:\TEST> cmd
Microsoft Windows [版本 10.0.18363.720]
(c) 2019 Microsoft Corporation。保留所有权利。

E:\TEST>"E:/TEST/Anime4k180/Anime4K.exe" -i "E:/TEST/# T E S T 测 试/01.png" -o "E:/TEST/# T E S T 测 试/01_RES.png" -z 2 -f -q -h 0 -d 0 -p 2 -n 2 -c 0.30 -g 1.00 -b -r 4 -a -e 40
GPU mode
Platform: AMD Accelerated Parallel Processing
Device: gfx804
Failed to load file: file doesn't not exist or incorrect file format.

E:\TEST>"E:/TEST/Anime4k170/Anime4K.exe" -i "E:/TEST/# T E S T 测 试/01.png" -o "E:/TEST/# T E S T 测 试/01_RES.png" -z 2 -f -q -h 0 -d 0 -p 2 -n 2 -c 0.30 -g 1.00 -b -r 4 -a -e 40
GPU mode
Platform: AMD Accelerated Parallel Processing
Device: gfx804
----------------------------------------------
Welcome to Anime4KCPP
----------------------------------------------
640x480 to 1280x960
----------------------------------------------
Passes: 2
pushColorCount: 2
Zoom Factor: 2
Video Mode: false
Fast Mode: true
Strength Color: 0.3
Strength Gradient: 1
----------------------------------------------
----------------------------------------------
Preprocessing filters list:
----------------------------------------------
CAS Sharpening
----------------------------------------------
Postprocessing filters list:
----------------------------------------------
Gaussian blur weak
Bilateral filter
----------------------------------------------
Processing...
Total process time: 0.086 s

压缩包里是测试用的文件:

打不开Anime4KCPP_GUI.exe

QQ截图20200602141004

操作系统:Microsoft Windows 7 旗舰版 (BUILD:7601) (64-bit)
CPU信息:Intel(R) Core(TM) i5-2415M CPU @ 2.30GHz
显卡信息:Intel(R) HD Graphics 3000

可否在图片处理完成后再写入硬盘

当前软件的策略貌似是边生成图像边写入硬盘, 导致如果进程被强制关闭, 会在硬盘内留下一个看似正常(名字, 分辨率什么参数都有), 但是实际上一大半都是黑色的坏掉的图片

所以可否更改为将生成的图像先缓冲在内存中, 整个图片处理完毕后再一起写入硬盘???

CLI能否实现用管道(pipe)输入输出

虽然指定文件名为cin(限定Windows)可以暂时解决问题,但我希望CLI能够真正支持管道输入输出。这样就可以使用各种编解码器,可以指定更多参数。

奇怪的显卡使用策略

我自行在Windows上编译了9ac24433b30bedb70133c310a36e044ffb55faaa版本的Anime4KCPP
发现显卡使用策略十分奇怪, 显存使用的是AMD独显, 而在AMD显卡驱动内看不到GPU占用, 却在任务管理内看到Intel集显使用率很高.
opencv版本:4.30
Intel OpenCL SDK: 2020.1.396
CMake:3.16.1
visual studio: 2017社区版

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.