Содержание
- Meshroom: Ошибка PrepareDenseScene
- Все 3 Комментарий
- Error during Graph execution Error on node «PrepareDenseScene_1»: #235
- Comments
- meshroom prepare dense scene error #1610
- Comments
- Error on PrepareDenseScene #201
- Comments
Meshroom: Ошибка PrepareDenseScene
в моем реальном проекте ячеистой сети у меня проблема, не знаю, как исправить. Он всегда останавливается на PrepareDenseScene с ошибкой. Самое безумное в том, что если раньше я не был в безопасности, он работает идеально. Удалял кеш, перезагрузка .
Но когда я его сохраняю, он останавливается на ошибке в том же месте.
Программа вызывается со следующими параметрами:
- input = «D: / Photogrametrie / 3D Scans / 609er / 609er außen / MeshroomCache / StructureFromMotion / a3aa525f03aa662cecda8b17531a7b52a3f53b85 / sfm.abc»
- output = «D: / Photogrametrie / 3D Scans / 609er / 609er außen / MeshroomCache / PrepareDenseScene / 1b844eef8f1e27a3c408a5ecb7d35a037414cf34»
- outputFileType = «exr»
- rangeSize = 26
- rangeStart = 0
- saveMatricesTxtFiles = 0
- saveMetadata = 1
- verboseLevel = «информация»
Экспорт неискаженных изображений сцены
0% 10 20 30 40 50 60 70 80 90100%
| —- | —- | —- | —- | —- | —- | —- | —- | —- | —- |
Все 3 Комментарий
Проблема все еще возникает, если вы удалите пробел в «609er außen»? О, и у вас есть еще один в «3D-сканировании»
Также ß может вызвать проблемы
Когда я это прочитал, я понял, что вы правы. Точно было название папки. В 3D-сканировании есть еще несколько. Так что с пространством это работает, но «ß» было слишком много.
Источник
Error during Graph execution Error on node «PrepareDenseScene_1»: #235
My process gets to prepare dense scene but after that it just fails for some reason 16gb ram gtx 1060
WARNING: downgrade status on node «CameraConnection_1» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(0)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(1)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(2)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(3)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(4)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(5)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(6)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(7)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(8)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(9)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(10)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(11)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(12)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMapFilter_1(0)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMapFilter_1(1)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMapFilter_1(2)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMapFilter_1(3)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «Meshing_1» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «MeshFiltering_1» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «Texturing_1» from Status.SUBMITTED to Status.NONE
ERROR:root:Error during Graph execution Error on node «PrepareDenseScene_1»:
Log:
Program called with the following parameters:
- input = «C:/Users/J/Desktop/Nová složka/3/MeshroomCache/StructureFromMotion/9185b7853e8a173f2610fd31238fa7437c75a394/sfm.abc»
- output = «C:/Users/J/Desktop/Nová složka/3/MeshroomCache/PrepareDenseScene/14a44dc18047f484b2e27e2bd35f804e64ce2a73»
- verboseLevel = «info»
The text was updated successfully, but these errors were encountered:
Источник
meshroom prepare dense scene error #1610
I’m trying to create a 3D mesh for use as an asset in a video art project, however I am a novice when it comes to programming and trouble shooting
it keeps failing at the preparedensescene node, and I can’t figure out why.
The log says
WARNING:root:Model size of -18 is less than 0
- commandLine: aliceVision_exportAnimatedCamera —input «E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677» —viewFilter «» —exportUVMaps True —exportUndistortedImages False —correctPrincipalPoint True —verboseLevel info —output «E:/MeshroomCache/ExportAnimatedCamera/d37b47173ffd0241ef6efe9d72e11959e789bc2c»
- logFile: E:/MeshroomCache/ExportAnimatedCamera/d37b47173ffd0241ef6efe9d72e11959e789bc2c/log
ERROR:root:Error on node computation: Error on node «ExportAnimatedCamera_1»:
Log:
[2022-01-26 17:46:05.793997] [0x000029e0] [debug] UVmap: 0
Program called with the following parameters:
- correctPrincipalPoint = 1
- exportFullROD = 0 (default)
- exportUVMaps = 1
- exportUndistortedImages = 0
- input = «E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677»
- output = «E:/MeshroomCache/ExportAnimatedCamera/d37b47173ffd0241ef6efe9d72e11959e789bc2c»
- undistortedImageType = «jpg» (default)
- verboseLevel = «info»
- viewFilter = «»
[17:46:05.795996][warning] There is no valid GT data to read from E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677gt_dense_cameras
[17:46:05.795996][error] The input SfMData file ‘E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677’ cannot be read.
WARNING:root:Downgrade status on node «ExportAnimatedCamera_1» from Status.ERROR to Status.SUBMITTED
- commandLine: aliceVision_exportAnimatedCamera —input «E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677» —viewFilter «» —exportUVMaps True —exportUndistortedImages False —correctPrincipalPoint True —verboseLevel info —output «E:/MeshroomCache/ExportAnimatedCamera/d37b47173ffd0241ef6efe9d72e11959e789bc2c»
- logFile: E:/MeshroomCache/ExportAnimatedCamera/d37b47173ffd0241ef6efe9d72e11959e789bc2c/log
ERROR:root:Error on node computation: Error on node «ExportAnimatedCamera_1»:
Log:
[2022-01-26 17:46:17.254588] [0x00002e60] [debug] UVmap: 0
Program called with the following parameters:
- correctPrincipalPoint = 1
- exportFullROD = 0 (default)
- exportUVMaps = 1
- exportUndistortedImages = 0
- input = «E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677»
- output = «E:/MeshroomCache/ExportAnimatedCamera/d37b47173ffd0241ef6efe9d72e11959e789bc2c»
- undistortedImageType = «jpg» (default)
- verboseLevel = «info»
- viewFilter = «»
[17:46:17.255588][warning] There is no valid GT data to read from E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677gt_dense_cameras
[17:46:17.255588][error] The input SfMData file ‘E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677’ cannot be read.
Traceback (most recent call last):
File «d:releaseBUILDmeshroommeshroomuigraph.py», line 384, in execute
File «d:releaseBUILDmeshroommeshroomcoretaskManager.py», line 218, in compute
RuntimeError: [COMPUTATION] Already Submitted:
WARNING — Some nodes are already submitted with status: RUNNING
Nodes: PrepareDenseScene_1(1)
WARNING:root:QQmlComponent: Created graphical object was not placed in the graphics scene.
Traceback (most recent call last):
File «d:releaseBUILDmeshroommeshroomuigraph.py», line 384, in execute
File «d:releaseBUILDmeshroommeshroomcoretaskManager.py», line 218, in compute
RuntimeError: [COMPUTATION] Already Submitted:
WARNING — Some nodes are already submitted with status: RUNNING
Nodes: PrepareDenseScene_1(1)
WARNING:root:Downgrade status on node «PrepareDenseScene_1(1)» from Status.RUNNING to Status.NONE
WARNING:root:Downgrade status on node «PrepareDenseScene_1(0)» from Status.ERROR to Status.SUBMITTED
- commandLine: aliceVision_prepareDenseScene —input «E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677/sfm.abc» —outputFileType exr —saveMetadata True —saveMatricesTxtFiles False —evCorrection False —verboseLevel info —output «E:/MeshroomCache/PrepareDenseScene/2f54a58bd873f643296656053fb11d715841f058» —rangeStart 0 —rangeSize 40
- logFile: E:/MeshroomCache/PrepareDenseScene/2f54a58bd873f643296656053fb11d715841f058/0.log
ERROR:root:Error on node computation: Error on node «PrepareDenseScene_1(0)»:
Log:
Program called with the following parameters:
- evCorrection = 0
- input = «E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677/sfm.abc»
- output = «E:/MeshroomCache/PrepareDenseScene/2f54a58bd873f643296656053fb11d715841f058»
- outputFileType = «exr»
- rangeSize = 40
- rangeStart = 0
- saveMatricesTxtFiles = 0
- saveMetadata = 1
- verboseLevel = «info»
Exporting Scene Undistorted Images
0% 10 20 30 40 50 60 70 80 90 100%
|—-|—-|—-|—-|—-|—-|—-|—-|—-|—-|
[17:50:11.273254][info] Median Camera Exposure: 1.5876, Median EV: -0.666848
- commandLine: aliceVision_prepareDenseScene —input «E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677/sfm.abc» —imagesFolders «E:/MeshroomCache/FeatureExtraction/2a0637763ebd38dfb009c0abf6a80bc4b3bf8874» —outputFileType exr —saveMetadata True —saveMatricesTxtFiles False —evCorrection False —verboseLevel info —output «E:/MeshroomCache/PrepareDenseScene/b3b838b5ad4dd21fd1c3c0797b711b7c710e5b70» —rangeStart 40 —rangeSize 40
- logFile: E:/MeshroomCache/PrepareDenseScene/b3b838b5ad4dd21fd1c3c0797b711b7c710e5b70/1.log
ERROR:root:Error on node computation: Error on node «PrepareDenseScene_1(1)»:
Log:
Program called with the following parameters:
- evCorrection = 0
- imagesFolders = = [E:/MeshroomCache/FeatureExtraction/2a0637763ebd38dfb009c0abf6a80bc4b3bf8874]
- input = «E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677/sfm.abc»
- output = «E:/MeshroomCache/PrepareDenseScene/b3b838b5ad4dd21fd1c3c0797b711b7c710e5b70»
- outputFileType = «exr»
- rangeSize = 40
- rangeStart = 40
- saveMatricesTxtFiles = 0
- saveMetadata = 1
- verboseLevel = «info»
Exporting Scene Undistorted Images
0% 10 20 30 40 50 60 70 80 90 100%
|—-|—-|—-|—-|—-|—-|—-|—-|—-|—-|
[18:05:09.412188][info] Median Camera Exposure: 1.5876, Median EV: -0.666848
- commandLine: aliceVision_prepareDenseScene —input «E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677/sfm.abc» —imagesFolders «E:/MeshroomCache/FeatureExtraction/2a0637763ebd38dfb009c0abf6a80bc4b3bf8874» —outputFileType exr —saveMetadata True —saveMatricesTxtFiles False —evCorrection False —verboseLevel info —output «E:/MeshroomCache/PrepareDenseScene/b3b838b5ad4dd21fd1c3c0797b711b7c710e5b70» —rangeStart 0 —rangeSize 40
- logFile: E:/MeshroomCache/PrepareDenseScene/b3b838b5ad4dd21fd1c3c0797b711b7c710e5b70/0.log
ERROR:root:Error on node computation: Error on node «PrepareDenseScene_1(0)»:
Log:
Program called with the following parameters:
- evCorrection = 0
- imagesFolders = = [E:/MeshroomCache/FeatureExtraction/2a0637763ebd38dfb009c0abf6a80bc4b3bf8874]
- input = «E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677/sfm.abc»
- output = «E:/MeshroomCache/PrepareDenseScene/b3b838b5ad4dd21fd1c3c0797b711b7c710e5b70»
- outputFileType = «exr»
- rangeSize = 40
- rangeStart = 0
- saveMatricesTxtFiles = 0
- saveMetadata = 1
- verboseLevel = «info»
Exporting Scene Undistorted Images
0% 10 20 30 40 50 60 70 80 90 100%
|—-|—-|—-|—-|—-|—-|—-|—-|—-|—-|
[18:05:11.307368][info] Median Camera Exposure: 1.5876, Median EV: -0.666848
WARNING:root:Downgrade status on node «PrepareDenseScene_1(1)» from Status.ERROR to Status.RUNNING
- commandLine: aliceVision_prepareDenseScene —input «E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677/sfm.abc» —imagesFolders «E:/MeshroomCache/FeatureExtraction/2a0637763ebd38dfb009c0abf6a80bc4b3bf8874» —outputFileType exr —saveMetadata True —saveMatricesTxtFiles False —evCorrection False —verboseLevel info —output «E:/MeshroomCache/PrepareDenseScene/b3b838b5ad4dd21fd1c3c0797b711b7c710e5b70» —rangeStart 40 —rangeSize 40
- logFile: E:/MeshroomCache/PrepareDenseScene/b3b838b5ad4dd21fd1c3c0797b711b7c710e5b70/1.log
ERROR:root:Error on node computation: Error on node «PrepareDenseScene_1(1)»:
Log:
Program called with the following parameters:
- evCorrection = 0
- imagesFolders = = [E:/MeshroomCache/FeatureExtraction/2a0637763ebd38dfb009c0abf6a80bc4b3bf8874]
- input = «E:/MeshroomCache/StructureFromMotion/c413771023b0da639091b09d08be27d20a2d4677/sfm.abc»
- output = «E:/MeshroomCache/PrepareDenseScene/b3b838b5ad4dd21fd1c3c0797b711b7c710e5b70»
- outputFileType = «exr»
- rangeSize = 40
- rangeStart = 40
- saveMatricesTxtFiles = 0
- saveMetadata = 1
- verboseLevel = «info»
Exporting Scene Undistorted Images
0% 10 20 30 40 50 60 70 80 90 100%
|—-|—-|—-|—-|—-|—-|—-|—-|—-|—-|
[18:05:13.087687][info] Median Camera Exposure: 1.5876, Median EV: -0.666848
The text was updated successfully, but these errors were encountered:
Источник
Error on PrepareDenseScene #201
It’s my first time to build AliceVision on Ubuntu.
I execute meshroom_photogrammetry, but I get some error message:
Plugins loaded: CameraCalibration, CameraConnection, CameraInit, CameraLocalization, CameraRigCalibration, CameraRigLocalization, ConvertAnimatedCamera, ConvertSfMFormat, DepthMap, DepthMapFilter, ExportAnimatedCamera, ExportMaya, ExportUndistortedImages, FeatureExtraction, FeatureMatching, ImageMatching, ImageMatchingMultiSfM, KeyframeSelection, MeshDecimate, MeshDenoising, MeshFiltering, MeshResampling, Meshing, PrepareDenseScene, Publish, SfMAlignment, SfMTransform, StructureFromMotion, Texturing
[2018-08-20 21:53:10,613][WARNING] == The following plugins could not be loaded ==
- simpleFarmSubmitter: No module named simpleFarm
Nodes to execute: [‘PrepareDenseScene_1’, ‘CameraConnection_1’, ‘DepthMap_1’, ‘DepthMapFilter_1’, ‘Meshing_1’, ‘MeshFiltering_1’, ‘Texturing_1’, ‘Publish_1’]
WARNING: downgrade status on node «PrepareDenseScene_1» from Status.ERROR to Status.SUBMITTED
- commandLine: aliceVision_prepareDenseScene —verboseLevel info —input «/tmp/MeshroomCache/StructureFromMotion/5fd83ae248840110951facebccadef96408ecd47/sfm.abc» —output «/tmp/MeshroomCache/PrepareDenseScene/22a9cbadff4985d800dd07ceeee7bbb8c6033312»
- logFile: /tmp/MeshroomCache/PrepareDenseScene/22a9cbadff4985d800dd07ceeee7bbb8c6033312/log
(‘ — elapsed time:’, ‘0:00:00.168711’)
[2018-08-20 21:53:10,881][ERROR] Error on node computation: Error on node «PrepareDenseScene_1»:
Log:
Program called with the following parameters:
- input = «/tmp/MeshroomCache/StructureFromMotion/5fd83ae248840110951facebccadef96408ecd47/sfm.abc»
- output = «/tmp/MeshroomCache/PrepareDenseScene/22a9cbadff4985d800dd07ceeee7bbb8c6033312»
- verboseLevel = «info»
terminate called after throwing an instance of ‘std::runtime_error’
what(): Can’t open ‘/tmp/MeshroomCache/StructureFromMotion/5fd83ae248840110951facebccadef96408ecd47/sfm.abc’ : Alembic file is not valid.
Aborted (core dumped)
WARNING: downgrade status on node «Texturing_1» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «Meshing_1» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMapFilter_1(0)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMapFilter_1(1)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMapFilter_1(2)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMapFilter_1(3)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «CameraConnection_1» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(0)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(1)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(2)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(3)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(4)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(5)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(6)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(7)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(8)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(9)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(10)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «DepthMap_1(11)» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «Publish_1» from Status.SUBMITTED to Status.NONE
WARNING: downgrade status on node «MeshFiltering_1» from Status.SUBMITTED to Status.NONE
Traceback (most recent call last):
File «bin/meshroom_photogrammetry», line 64, in
meshroom.core.graph.executeGraph(graph, toNodes=toNodes, forceCompute=args.forceCompute, forceStatus=args.forceStatus)
File «/home/yueh/meshroom/meshroom/core/graph.py», line 1124, in executeGraph
chunk.process(forceCompute)
File «/home/yueh/meshroom/meshroom/core/node.py», line 271, in process
self.node.nodeDesc.processChunk(self)
File «/home/yueh/meshroom/meshroom/core/desc.py», line 407, in processChunk
raise RuntimeError(‘Error on node «<>«:nLog:n<>‘.format(chunk.name, logContent))
RuntimeError: Error on node «PrepareDenseScene_1»:
Log:
Program called with the following parameters:
- input = «/tmp/MeshroomCache/StructureFromMotion/5fd83ae248840110951facebccadef96408ecd47/sfm.abc»
- output = «/tmp/MeshroomCache/PrepareDenseScene/22a9cbadff4985d800dd07ceeee7bbb8c6033312»
- verboseLevel = «info»
terminate called after throwing an instance of ‘std::runtime_error’
what(): Can’t open ‘/tmp/MeshroomCache/StructureFromMotion/5fd83ae248840110951facebccadef96408ecd47/sfm.abc’ : Alembic file is not valid.
Aborted (core dumped)
Here is my cmake command
cmake -DCMAKE_BUILD_TYPE=Release -DALICEVISION_BUILD_TESTS=ON -DALICEVISION_USE_CUDA=OFF -DALICEVISION_USE_ALEMBIC=ON -DALICEVISION_BUILD_EXAMPLES=ON ..
I have checked the Alembic ON and I confirmed that Alembic be compiled.
In the SFM Log File, I got some message:
[20:51:11.088121][info] Structure from motion took (s): 9.740000
[20:51:11.088154][info] Generating HTML report.
[20:51:11.094355][info] Export SfMData to disk: /tmp/MeshroomCache/StructureFromMotion/5fd83ae248840110951facebccadef96408ecd47/sfm.abc
[20:51:11.094394][error] Cannot save the SfM data file: ‘/tmp/MeshroomCache/StructureFromMotion/5fd83ae248840110951facebccadef96408ecd47/cloud_and_poses.abc’.
The file extension is not recognized.
[20:51:11.094407][error] Cannot save the SfM data file: ‘/tmp/MeshroomCache/StructureFromMotion/5fd83ae248840110951facebccadef96408ecd47/sfm.abc’.
The file extension is not recognized.
It seems that the data file can not save, but why?
If anyone can tell me how to fix this problem I will appreciate.
Thanks.
The text was updated successfully, but these errors were encountered:
Источник
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.
Already on GitHub?
Sign in
to your account
Closed
BojoPhoto opened this issue
Aug 29, 2019
· 5 comments
Labels
stale
for issues that becomes stale (no solution)
Comments
I am new to this community and to meshroom. I encountered the issue below while attempting to construct my first scan using 123 18-MegaPixel images. I am using the latest version of Meshroom on a Windows 10 gaming computer and the default Meshroom nodes. Any advice or potential solutions would be greatly appreciated!
I was got this error very often. This common advices what I can give you:
- Resize images to 1200-2000px for largest side. It will may fastest expermients to find bug.
- Dont use all images at begin. Start try from first 50 images, then add next 50 images to calculation. And for each series of nodes, do the calculation up to the node PrepareDenseScene. So you will catch problem images or series of images.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
stale
bot
added
the
stale
for issues that becomes stale (no solution)
label
Dec 28, 2019
This issue is closed due to inactivity. Feel free to re-open if new information is available.
I got the same/similar error on «PrepareDenseScene».
The default one is working smooth, the new one (same params except using a custom Image Folder to use with noise pattern) is giving me this error.
Thank you,
Riccardo
Nodes to execute: ['PrepareDenseScene_3']
[1/1] PrepareDenseScene
- commandLine: aliceVision_prepareDenseScene --input "/home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/StructureFromMotion/8459a1b2862f0f701da267fea0e6dda21c794b6e/sfm.abc" --imagesFolders "" --outputFileType exr --saveMetadata True --saveMatricesTxtFiles False --evCorrection False --verboseLevel info --output "/home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/PrepareDenseScene/257c12a8d090c4ebe43eaa3d8600af547bbf9f8d" --rangeStart 0 --rangeSize 40
- logFile: /home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/PrepareDenseScene/257c12a8d090c4ebe43eaa3d8600af547bbf9f8d/0.log
- elapsed time: 0:00:00.041972
ERROR:root:Error on node computation: Error on node "PrepareDenseScene_3(0)":
Log:
Program called with the following parameters:
* evCorrection = 0
* imagesFolders = = []
* input = "/home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/StructureFromMotion/8459a1b2862f0f701da267fea0e6dda21c794b6e/sfm.abc"
* output = "/home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/PrepareDenseScene/257c12a8d090c4ebe43eaa3d8600af547bbf9f8d"
* outputFileType = "exr"
* rangeSize = 40
* rangeStart = 0
* saveMatricesTxtFiles = 0
* saveMetadata = 1
* verboseLevel = "info"
Exporting Scene Undistorted Images
0% 10 20 30 40 50 60 70 80 90 100%
|----|----|----|----|----|----|----|----|----|----|
[01:05:41.472076][info] median Ev : 9.06566e-38
terminate called recursively
terminate called after throwing an instance of 'boost::filesystem::filesystem_errorAborted
ERROR:root:Error during Graph execution Error on node "PrepareDenseScene_3(0)":
Log:
Program called with the following parameters:
* evCorrection = 0
* imagesFolders = = []
* input = "/home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/StructureFromMotion/8459a1b2862f0f701da267fea0e6dda21c794b6e/sfm.abc"
* output = "/home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/PrepareDenseScene/257c12a8d090c4ebe43eaa3d8600af547bbf9f8d"
* outputFileType = "exr"
* rangeSize = 40
* rangeStart = 0
* saveMatricesTxtFiles = 0
* saveMetadata = 1
* verboseLevel = "info"
Exporting Scene Undistorted Images
0% 10 20 30 40 50 60 70 80 90 100%
|----|----|----|----|----|----|----|----|----|----|
[01:05:41.472076][info] median Ev : 9.06566e-38
terminate called recursively
terminate called after throwing an instance of 'boost::filesystem::filesystem_errorAborted
The exr format has a relative big filesize, compared to png or jpeg, and the error thrown is a filesystem-error!
Maybe you don’t have enough free disk space?
Labels
stale
for issues that becomes stale (no solution)
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.
Already on GitHub?
Sign in
to your account
Closed
BojoPhoto opened this issue
Aug 29, 2019
· 5 comments
Labels
stale
for issues that becomes stale (no solution)
Comments
I am new to this community and to meshroom. I encountered the issue below while attempting to construct my first scan using 123 18-MegaPixel images. I am using the latest version of Meshroom on a Windows 10 gaming computer and the default Meshroom nodes. Any advice or potential solutions would be greatly appreciated!
I was got this error very often. This common advices what I can give you:
- Resize images to 1200-2000px for largest side. It will may fastest expermients to find bug.
- Dont use all images at begin. Start try from first 50 images, then add next 50 images to calculation. And for each series of nodes, do the calculation up to the node PrepareDenseScene. So you will catch problem images or series of images.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
stale
bot
added
the
stale
for issues that becomes stale (no solution)
label
Dec 28, 2019
This issue is closed due to inactivity. Feel free to re-open if new information is available.
I got the same/similar error on «PrepareDenseScene».
The default one is working smooth, the new one (same params except using a custom Image Folder to use with noise pattern) is giving me this error.
Thank you,
Riccardo
Nodes to execute: ['PrepareDenseScene_3']
[1/1] PrepareDenseScene
- commandLine: aliceVision_prepareDenseScene --input "/home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/StructureFromMotion/8459a1b2862f0f701da267fea0e6dda21c794b6e/sfm.abc" --imagesFolders "" --outputFileType exr --saveMetadata True --saveMatricesTxtFiles False --evCorrection False --verboseLevel info --output "/home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/PrepareDenseScene/257c12a8d090c4ebe43eaa3d8600af547bbf9f8d" --rangeStart 0 --rangeSize 40
- logFile: /home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/PrepareDenseScene/257c12a8d090c4ebe43eaa3d8600af547bbf9f8d/0.log
- elapsed time: 0:00:00.041972
ERROR:root:Error on node computation: Error on node "PrepareDenseScene_3(0)":
Log:
Program called with the following parameters:
* evCorrection = 0
* imagesFolders = = []
* input = "/home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/StructureFromMotion/8459a1b2862f0f701da267fea0e6dda21c794b6e/sfm.abc"
* output = "/home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/PrepareDenseScene/257c12a8d090c4ebe43eaa3d8600af547bbf9f8d"
* outputFileType = "exr"
* rangeSize = 40
* rangeStart = 0
* saveMatricesTxtFiles = 0
* saveMetadata = 1
* verboseLevel = "info"
Exporting Scene Undistorted Images
0% 10 20 30 40 50 60 70 80 90 100%
|----|----|----|----|----|----|----|----|----|----|
[01:05:41.472076][info] median Ev : 9.06566e-38
terminate called recursively
terminate called after throwing an instance of 'boost::filesystem::filesystem_errorAborted
ERROR:root:Error during Graph execution Error on node "PrepareDenseScene_3(0)":
Log:
Program called with the following parameters:
* evCorrection = 0
* imagesFolders = = []
* input = "/home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/StructureFromMotion/8459a1b2862f0f701da267fea0e6dda21c794b6e/sfm.abc"
* output = "/home/crickyx/3d/Fotogrammetria/Atena/MeshroomCache/PrepareDenseScene/257c12a8d090c4ebe43eaa3d8600af547bbf9f8d"
* outputFileType = "exr"
* rangeSize = 40
* rangeStart = 0
* saveMatricesTxtFiles = 0
* saveMetadata = 1
* verboseLevel = "info"
Exporting Scene Undistorted Images
0% 10 20 30 40 50 60 70 80 90 100%
|----|----|----|----|----|----|----|----|----|----|
[01:05:41.472076][info] median Ev : 9.06566e-38
terminate called recursively
terminate called after throwing an instance of 'boost::filesystem::filesystem_errorAborted
The exr format has a relative big filesize, compared to png or jpeg, and the error thrown is a filesystem-error!
Maybe you don’t have enough free disk space?
Labels
stale
for issues that becomes stale (no solution)
Meshroom: Ошибка PrepareDenseScene
в моем реальном проекте ячеистой сети у меня проблема, не знаю, как исправить. Он всегда останавливается на PrepareDenseScene с ошибкой. Самое безумное в том, что если раньше я не был в безопасности, он работает идеально. Удалял кеш, перезагрузка .
Но когда я его сохраняю, он останавливается на ошибке в том же месте.
Программа вызывается со следующими параметрами:
- input = «D: / Photogrametrie / 3D Scans / 609er / 609er außen / MeshroomCache / StructureFromMotion / a3aa525f03aa662cecda8b17531a7b52a3f53b85 / sfm.abc»
- output = «D: / Photogrametrie / 3D Scans / 609er / 609er außen / MeshroomCache / PrepareDenseScene / 1b844eef8f1e27a3c408a5ecb7d35a037414cf34»
- outputFileType = «exr»
- rangeSize = 26
- rangeStart = 0
- saveMatricesTxtFiles = 0
- saveMetadata = 1
- verboseLevel = «информация»
Экспорт неискаженных изображений сцены
0% 10 20 30 40 50 60 70 80 90100%
| —- | —- | —- | —- | —- | —- | —- | —- | —- | —- |
Все 3 Комментарий
Проблема все еще возникает, если вы удалите пробел в «609er außen»? О, и у вас есть еще один в «3D-сканировании»
Также ß может вызвать проблемы
Когда я это прочитал, я понял, что вы правы. Точно было название папки. В 3D-сканировании есть еще несколько. Так что с пространством это работает, но «ß» было слишком много.
Источник
Prepare DenseScene Fails #396
Comments
Thorngage commented Feb 12, 2019
Hi, I managed to import the images and start the process, but it stops and fails at the Prepare Dense Scene Node
- commandLine: aliceVision_prepareDenseScene —input «C:/Users/miche/Documents/Università/Scienza della Rappresentazione 3/Fotogrammetria/MeshroomCache/StructureFromMotion/197f30e80b9377e706ef632436e6379768d4684a/sfm.abc» —verboseLevel info —output «C:/Users/miche/Documents/Università/Scienza della Rappresentazione 3/Fotogrammetria/MeshroomCache/PrepareDenseScene/712d09931794378c58abeeeb122107caa29f26e9»
- logFile: C:/Users/miche/Documents/Università/Scienza della Rappresentazione 3/Fotogrammetria/MeshroomCache/PrepareDenseScene/712d09931794378c58abeeeb122107caa29f26e9/log
- elapsed time: 0:00:11.818315
ERROR:root:Error on node computation: Error on node «PrepareDenseScene_1»:
Log:
Program called with the following parameters:
- input = «C:/Users/miche/Documents/Università/Scienza della Rappresentazione 3/Fotogrammetria/MeshroomCache/StructureFromMotion/197f30e80b9377e706ef632436e6379768d4684a/sfm.abc»
- output = «C:/Users/miche/Documents/Università/Scienza della Rappresentazione 3/Fotogrammetria/MeshroomCache/PrepareDenseScene/712d09931794378c58abeeeb122107caa29f26e9»
- verboseLevel = «info»
ERROR:root:Error during Graph execution Error on node «PrepareDenseScene_1»:
Also, if I double click the Structure from motion node, the point cloud does not appear, not sure if it’s related
The text was updated successfully, but these errors were encountered:
fabiencastan commented Feb 13, 2019
Could you provide the log of the StructureFromMotion?
Thorngage commented Feb 13, 2019
log.txt
This is the whole log, I believe
MacMachin commented Feb 22, 2019
I have a similar problem, PrepareDenseScene fail with the following status:
<
«status»: «ERROR»,
«execMode»: «LOCAL»,
«nodeName»: «PrepareDenseScene_1»,
«nodeType»: «PrepareDenseScene»,
«packageName»: «aliceVision»,
«packageVersion»: null,
«graph»: «»,
«commandLine»: «aliceVision_prepareDenseScene —input «D:/Work/Dessin-Peinture/3D/Ru00e9fu00e9rences/CC/MeshroomCache/StructureFromMotion/fe599f901558abb877b2e8a766ab4141707d8d0a/sfm.abc» —verboseLevel trace —output «D:/Work/Dessin-Peinture/3D/Ru00e9fu00e9rences/CC/MeshroomCache/PrepareDenseScene/a5e0b24f4baeb04af781fa9377c9ebf9248e4faf» «,
«env»: null,
«startDateTime»: «2019-02-22 11:45:27.488309»,
«endDateTime»: «»,
«elapsedTime»: 0,
«hostname»: «MAISON»,
«sessionUid»: «7159a146-368e-11e9-a395-001583f5e6f8»,
«returnCode»: 3221226505,
«elapsedTimeStr»: «0:00:00»
>
The output of the previous node is attached in a zip file
SFM.zip
BTeaJoe commented Mar 8, 2019
On my computer (GTX 960, Intel i5-6400, 16GB memory, Win10) the program crashes for a set of images almost immediately after I start PrepareDenseScene. Two days ago, my computer still had 8GB and Win7, but the upgrade did not change anything. However, the computation of this set of images worked just fine on a different computer.
ulfgroote commented Aug 6, 2019 •
I have the same problem – but I suspect it comes from StructureFromMotion: that node gets green (and Meshroom crashes on the next node, PrepareDenseScene), but this is the log from StructureFromMotion:
- commandLine: aliceVision_incrementalSfM —input «O:/Spielereien/Photogrammetrie/Fußabdruck/MeshroomCache/CameraInit/bb43b7d26dfee971482dbab12db561c47d883d45/cameraInit.sfm» —featuresFolders «O:/Spielereien/Photogrammetrie/Fußabdruck/MeshroomCache/FeatureExtraction/e519d4d14c9b10164eb9fad0f17948ce215ac976» —matchesFolders «O:/Spielereien/Photogrammetrie/Fußabdruck/MeshroomCache/FeatureMatching/4ae203ddcf3e33a2c9ce59e5645c5d584fa980e7» —describerTypes sift —localizerEstimator acransac —localizerEstimatorMaxIterations 4096 —localizerEstimatorError 0.0 —lockScenePreviouslyReconstructed False —useLocalBA True —localBAGraphDistance 1 —maxNumberOfMatches 0 —minInputTrackLength 3 —minNumberOfObservationsForTriangulation 2 —minAngleForTriangulation 3.0 —minAngleForLandmark 2.0 —maxReprojectionError 4.0 —minAngleInitialPair 5.0 —maxAngleInitialPair 40.0 —useOnlyMatchesFromInputFolder False —useRigConstraint True —lockAllIntrinsics True —initialPairA «» —initialPairB «» —interFileExtension .abc —verboseLevel warning —output «O:/Spielereien/Photogrammetrie/Fußabdruck/MeshroomCache/StructureFromMotion/c72059613522267ad618e0e1e944f584af2f69c6/sfm.abc» —outputViewsAndPoses «O:/Spielereien/Photogrammetrie/Fußabdruck/MeshroomCache/StructureFromMotion/c72059613522267ad618e0e1e944f584af2f69c6/cameras.sfm» —extraInfoFolder «O:/Spielereien/Photogrammetrie/Fußabdruck/MeshroomCache/StructureFromMotion/c72059613522267ad618e0e1e944f584af2f69c6»
- logFile: O:/Spielereien/Photogrammetrie/Fußabdruck/MeshroomCache/StructureFromMotion/c72059613522267ad618e0e1e944f584af2f69c6/log
- elapsed time: 0:00:39.657431
HDF5-DIAG: Error detected in HDF5 (1.10.1) thread 0:
#000: C:GitHubvcpkgbuildtreeshdf5srcCMake-hdf5-1.10.1hdf5-1.10.1srcH5F.c line 408 in H5Fis_hdf5(): unable open file
major: File accessibilty
minor: Not an HDF5 file
3D viewer #1 : C:GitHubvcpkgbuildtreeshdf5srcCMake-hdf5-1.10.1hdf5-1.10.1srcH5Fint.c line 532 in H5F__is_hdf5(): unable to open file
major: Low-level I/O
minor: Unable to initialize object
Open the output directory #2 : C:GitHubvcpkgbuildtreeshdf5srcCMake-hdf5-1.10.1hdf5-1.10.1srcH5FD.c line 809 in H5FD_open(): open failed
major: Virtual File Layer
minor: Unable to initialize object
Standalone version #3 : C:GitHubvcpkgbuildtreeshdf5srcCMake-hdf5-1.10.1hdf5-1.10.1srcH5FDsec2.c line 346 in H5FD_sec2_open(): unable to open file: name = ‘O:/Spielereien/Photogrammetrie/Fu├ƒabdruck/MeshroomCache/StructureFromMotion/c72059613522267ad618e0e1e944f584af2f69c6/sfm.abc’, errno = 2, error message = ‘No such file or directory’, flags = 0, o_flags = 0
major: File accessibilty
minor: Unable to open file
EDIT:
And when I remove the special character from the path (replacing the ß),
StructureFromMotion does now throw an «BundleAdjustment failed, the solution is not usable» error …
Источник
Prepare dense scene #530
Comments
jonbragado commented Jun 30, 2019
Configuration
Version 2019.1.0
Windows 10
Python 3.6.6
Going through every stage the node called PrepareDenseScene fails to compute. Goes red with no signal in the log of being wrong at any stage.
I need the dense scene computation, and for some reason the camera export fails too; the baked .abc file lack any cached attributes as keyframes on the camera (unless it is the same case as in maya where the .abc have to be baked first?)
The text was updated successfully, but these errors were encountered:
fabiencastan commented Jun 30, 2019
Could you show the log of the SfM node?
jonbragado commented Jun 30, 2019
fabiencastan commented Jun 30, 2019
It may be due to the non ascii character in the path A�reo .
jonbragado commented Jun 30, 2019
How come then the other nodes are able to write to the respective folders properly without any issues of that non-ascii character? Im giving it a try now, just asking.
Also, we have a workflow in Spanish of all the 3D software we use and run, even our windows in Spanish. Any chance we can get full on UTF-8 native support for future releases?
fabiencastan commented Jun 30, 2019
In the PrepareDenseScene we write images using the oiio library and the problem could be there. But first, we need to validate if the problem comes from that 😉
jonbragado commented Jun 30, 2019
Internationalization is also something it would be great to have, Meshroom in Spanish. We can help on that as a proofreader for a first machine translation pass.
Already doing it for another open source project called DJV. It would be great to have the interface in Spanish.
natowi commented Jun 30, 2019 •
@fabiencastan this could indeed be an oiio related issue which should be fixed with the latest release from what I read on OpenImageIO/oiio#1454. Alicevision might has been using an outdated oiio version for the last build. Edit: Hmm. For Alicevision oiio Release-2.0.3. is being used, which should include utf8 support.
Источник
Prepare Dense Scene Error #1015
Comments
miquelrosell99 commented Aug 2, 2020
Hello,
I’m getting an error when trying to compute the Prepare Dense Scene node. It’s strange, because it usually works without any problems:
These are the logs i get:
<
«status»: «ERROR»,
«execMode»: «LOCAL»,
«nodeName»: «PrepareDenseScene_1»,
«nodeType»: «PrepareDenseScene»,
«packageName»: «aliceVision»,
«packageVersion»: null,
«graph»: «»,
«commandLine»: «aliceVision_prepareDenseScene —input «F:/Documentos/Universitat/GEM/Quart/TFG/Projectes Meshroom/Excursiu00f3 Pirineus/MeshroomCache/StructureFromMotion/0096df343e4b80c2fa3e9eadcbb056167847f231/sfm.abc» —outputFileType exr —saveMetadata True —saveMatricesTxtFiles False —evCorrection False —verboseLevel info —output «F:/Documentos/Universitat/GEM/Quart/TFG/Projectes Meshroom/Excursiu00f3 Pirineus/MeshroomCache/PrepareDenseScene/52532b163b1736f5eab5d7ee5826748d6fd6bc1f» —rangeStart 0 —rangeSize 40″,
«env»: null,
«startDateTime»: «2020-08-02 07:52:57.937947»,
«endDateTime»: «»,
«elapsedTime»: 0,
«hostname»: «Baymax»,
«sessionUid»: «32b5829c-d483-11ea-b305-d0c0bfb5a3ae»,
«returnCode»: 3221226505,
«elapsedTimeStr»: «0:00:00»
>
Any help will be appreciated. Thanks!
The text was updated successfully, but these errors were encountered:
Источник
meshroom don’t calculate prepare dense scene #456
Comments
AlejandroHerreraJ commented Apr 28, 2019
I´m trying to make a project on Meshroom, but when meshroom were calculating it stops on PrepareDenseScene
6/11 PrepareDenseScene
HDF5-DIAG: Error detected in HDF5 (1.10.1) thread 0:
#000: C:GitHubvcpkgbuildtreeshdf5srcCMake-hdf5-1.10.1hdf5-1.10.1srcH5F.c line 408 in H5Fis_hdf5(): unable open file
major: File accessibilty
minor: Not an HDF5 file
#1: C:GitHubvcpkgbuildtreeshdf5srcCMake-hdf5-1.10.1hdf5-1.10.1srcH5Fint.c line 532 in H5F__is_hdf5(): unable to open file
major: Low-level I/O
minor: Unable to initialize object
#2: C:GitHubvcpkgbuildtreeshdf5srcCMake-hdf5-1.10.1hdf5-1.10.1srcH5FD.c line 809 in H5FD_open(): open failed
major: Virtual File Layer
minor: Unable to initialize object
#3: C:GitHubvcpkgbuildtreeshdf5srcCMake-hdf5-1.10.1hdf5-1.10.1srcH5FDsec2.c line 346 in H5FD_sec2_open(): unable to open file: name = ‘C:/Users/aleja/OneDrive — Universidad de los andes/Escritorio/Universidad/Dise├▒o Grafico/Inventor/Proyecto 2/MeshroomCache/StructureFromMotion/3b02f27ac03ad0842d9412800084ccab34c7569c/sfm.abc’, errno = 2, error message = ‘No such file or directory’, flags = 0, o_flags = 0
major: File accessibilty
minor: Unable to open file
- commandLine: aliceVision_prepareDenseScene —input «C:/Users/aleja/OneDrive — Universidad de los andes/Escritorio/Universidad/Diseño Grafico/Inventor/Proyecto 2/MeshroomCache/StructureFromMotion/3b02f27ac03ad0842d9412800084ccab34c7569c/sfm.abc» —outputFileType exr —saveMetadata True —saveMatricesTxtFiles False —verboseLevel info —output «C:/Users/aleja/OneDrive — Universidad de los andes/Escritorio/Universidad/Diseño Grafico/Inventor/Proyecto 2/MeshroomCache/PrepareDenseScene/c4c01d67d6f577b80b31307dbd1a3a773abd4a0d» —rangeStart 0 —rangeSize 40
- logFile: C:/Users/aleja/OneDrive — Universidad de los andes/Escritorio/Universidad/Diseño Grafico/Inventor/Proyecto 2/MeshroomCache/PrepareDenseScene/c4c01d67d6f577b80b31307dbd1a3a773abd4a0d/0.log
- elapsed time: 0:00:07.485765
ERROR:root:Error on node computation: Error on node «PrepareDenseScene_1(0)»:
Log:
Program called with the following parameters:
- input = «C:/Users/aleja/OneDrive — Universidad de los andes/Escritorio/Universidad/Diseño Grafico/Inventor/Proyecto 2/MeshroomCache/StructureFromMotion/3b02f27ac03ad0842d9412800084ccab34c7569c/sfm.abc»
- output = «C:/Users/aleja/OneDrive — Universidad de los andes/Escritorio/Universidad/Diseño Grafico/Inventor/Proyecto 2/MeshroomCache/PrepareDenseScene/c4c01d67d6f577b80b31307dbd1a3a773abd4a0d»
- outputFileType = «exr»
- rangeSize = 40
- rangeStart = 0
- saveMatricesTxtFiles = 0
- saveMetadata = 1
- verboseLevel = «info»
The text was updated successfully, but these errors were encountered:
Источник
Время прочтения
8 мин
Просмотры 16K
Вам нужно автоматизировать огромное количество фотограмметрических сканов? Тогда у меня для вас хорошие новости.
В видео показана программа для фотограмметрии Meshroom с открытым исходным кодом. Этот проект в разных формах существует уже довольно давно, но недавно разработчики выпустили двоичные файлы, поэтому их можно просто скачать и использовать. В ролике продемонстрировано использование GUI для загрузки изображений, их обработки, изменения параметров и т.д. Рекомендую вам попробовать эту программу в действии.
Но меня интересует полная автоматизация. Если у вас есть сканирующая установка, на которой вы делаете по 100 и больше сканов в день, то необходимо полностью автоматизированное решение для пакетной обработки этих файлов. Данный пост является руководством и/или туториалом по решению этой задачи.
Для начала важно понять, что Meshroom — не гигантский, монолитный проект. На самом деле, сама обработка выполняется отдельными программами на C++, работающими из командной строки, а Meshroom — это тонкая программа-прокладка на Python, выполняющая соответствующие вызовы. Поэтому вместо использования Meshroom мы будем применять эти программы напрямую. Учтите, что доступны полные исходники, поэтому вы можете привязать библиотеки напрямую.
У Meshroom есть ещё одна удобная особенность: при выполнении каждой операции её команда отображается в терминале. Поэтому чтобы создать этапы этого процесса, я просто работал с Meshroom и смотрел за командами. Затем я заглянул в код, чтобы изменить некоторые параметры. Кроме того, кажется, при запуске Meshroom можно приказать ему собрать набор изображений из командной строки, но я предпочитаю не соединять эти этапы.
Подготовка и установка
0: Требования
Meshroom/AliceVision запустятся не на каждой платформе. Для некоторых этапов необходима CUDA, поэтому для построения карт глубин вам понадобится GPU компании NVIDIA. К сожалению использовать CPU fallback (перенос выполнения функций GPU на ЦП) невозможно., иначе программа бы отлично работала и в Windows, в Linux. Инструкции в этой статье даны для Windows, но с минимальными изменениями их можно подстроить и под Linux.
1: Скачайте релиз Meshroom
Meshroom 2018.1.0
Первое, что нужно сделать — установить Meshroom. Выберите папку, из которой хотите выполнять работу, а затем скачайте последнюю версию. В zip-файле есть двоичные файлы всех зависимостей.
Если вас тянет на приключения, то можете попробовать собрать программу самостоятельно. Релизные динамически подключаемые библиотеки работают нормально (/MD), но мне пришлось хакать файлы cmake для создания отладочных сборок и/или сборок со статическим подключением. Если вы будете собирать программу под Windows, то КРАЙНЕ рекомендую использовать VCPKG.
2: Скачайте данные
alicevision/dataset_monstree
Очевидно, что весь смысл ПО фотограмметрии заключается в обработке ваших собственных изображений, но для начала я предлагаю использовать изображения, которые гарантированно подходят. Они позволят найти источники проблем, если что-то пойдёт не так. К счастью, разработчики выпустили набор изображений для своего тестового дерева.
3: Скачайте скрипт run_alicevision.py
run_alicevision.zip
Это скрипт, который мы будем использовать. Просто скачайте zip-файл и распакуйте его в рабочую папку.
4: Установите Python
https://www.python.org/download/releases/2.7/
Установите Python, если вы ещё этого не сделали. Да, я всё ещё пишу код для Python 2.7.0. Проще всего установить Windows X86-64 MSI Installer из релизов.
5: Установите Meshlab (необязательно)
MeshLab
В качестве необязательного шага нужно также установить MeshLab. На самом деле для обработки она не понадобится, но на нескольких этапах данные выводятся в файлах точек PLY. Их нельзя загрузить в Maya, поэтому для их просмотра я пользуюсь MeshLab.
После распаковки всех файлов папка должна выглядеть следующим образом (за исключением папки build_files, которая генерируется скриптами):
Здесь есть следующее:
- build_files: файлы, которые мы собрали.
- dataset_monstree-master: исходные изображения
- Meshroom-2018.1.0: двоичные файлы Meshroom/AliceVision.
- Всё остальное: скрипты для их запуска, которые взяты из run_alicevision.zip.
Запуск AliceVision
Теперь настало время приглядеться к run_alicevision.py
Файл Python получает 5 аргументов:
python run_alicevision.py <baseDir> <imgDir> <binDir> <numImages> <runStep>
- baseDir: папка, в которую вы хотите помещать временные файлы.
- imgDir: папка, содержащая исходные изображения. В нашем случае IMG_1024.JPG (и другие).
- binDir: папка, содержащая исполняемые файлы AliceVision, например aliceVision_cameraInit.exe.
- numImages: количество изображений в imgDir, в нашем случае 6. Разумеется, можно распознавать это количество автоматически, но цель заключалась в создании как можно более простого python-скрипта, поэтому нужно указывать это число самостоятельно.
- runStep: выполняемая операция.
Подведём итог: мы начинаем с 6 изображений, выглядящих следующим образом:
С помощью python-скрипта run_alicevision.py мы собираемся создать следующую структуру папок:
А в папке 11_Texturing будет находиться готовая модель, открываемая в Meshlab:
Каждая из этих папок является одним из этапов. Мы можем или запускать их по очереди с помощью файлов run_monstree_runXX.bat, или воспользоваться run_monstree_all.bat, чтобы собрать их все сразу.
Вот и всё. Теперь можно запустить файл run_monstree_all.bat, или выполнять по одному этапу за раз. Можете посмотреть на скрипт, чтобы разобраться в его работе. Для тех, кому хочется иметь возможность настройки конвейера обработки я подготовил введение в отдельные этапы.
00_CameraInit
Первый этап сгенерирует файл SFM. Файлы SFM — это файлы в формате JSON, в которых хранятся размер камеры, информация о сенсоре, найденные 3d-точки (наблюдения), коэффициенты искажения и другая информация. Первоначальный файл SFM в этой папке будет содержать только информацию о сенсоре и выбирать значения по умолчанию из локальной базы данных сенсоров. Последующие этапы будут создавать файлы SFM, содержащие полные матрицы внешних параметров камер, точки и т.д.
Вам может потребоваться настройка этого этапа. Если вы используете установку с 4 камерами, но делаете 10 снимков объекта, вращающегося на поворотном столе, то вам пригодится файл SFM с 40 изображениями, но всего с 4 разными калибровками сенсоров. Это основная причина того, почему мне нравится структура AliceVision. В ней легко настраивать пакетные операции (например генерацию собственного файла SFM) без мучений с настройкой других элементов ПО, которые лучше не трогать.
01_FeatureExtraction
Следующий этап извлекает из изображений характерные черты, а также дескрипторы этих черт. Он будет изменять расширение файла в зависимости от типа извлекаемой характерной черты.
02_ImageMatching
02_ImageMatching — это этап постобработки, определяющий, какие из изображений логично сопоставлять друг с другом. Если у вас есть набор из 1000 изображений, то для грубого перебора всех 1000 изображений на соответствие всем 1000 изображениям потребуется 1 миллион пар. На это может потребоваться много времени (на самом деле в два раза меньше, но вы поняли принцип). Этап 02_ImageMatching отсекает эти пары.
03_FeatureMatching
03_FeatureMatching находит соответствия между изображениями с помощью дескрипторов характерных черт. Генерируемые им файлы txt в объяснении не нуждаются.
04_StructureFromMotion
Так, это первый серьёзный этап. На основании соответствий 04_StructureFromMotion вычисляет позиции камер, а также внутренние параметры камер. Следует учесть, что термин «Structure From Motion» используется как общий для вычисления позиций камер. Если у вас есть установка для фотограмметрии из 10 синхронизированных камер, то «Structure From Motion» используется для их привязки, даже если на самом деле ничего не двигается.
По умолчанию Meshroom хранит все вычисленные данные как файл Alembic, но я предпочитаю хранить их в файле SFM. Этот этап создаёт промежуточные данные, позволяющие убедиться в правильной привязке камер. На выходе скрипт создаёт файлы PLY, которые можно просмотреть в Meshlab. Важны следующие файлы:
- bundle.sfm: файл SFM со всеми наблюдениями.
- cameras.fm: файл SFM с данными только привязанных камер.
- cloud_and_poses.ply: найденные точки и камеры.
Вот файл cloud_and_poses.ply. Зелёные точки — это камеры. Я считаю, что этот формат удобнее всего подходит для проверки отсутствия грубых ошибок в привязке камер. Если где-то возникнет ошибка, то вы можете вернуться назад и изменить характерные черты, соответствия или параметры SFM.
05_PrepareDenseScene
Основная задача 05_PrepareDenseScene — устранение искажений в изображениях. Он генерирует изображения EXR без искажений, чтобы последующим этапам вычисления глубин и проекций не нужно было выполнять преобразования туда-обратно из функции искажений. Изображения выглядят так:
Нужно заметить, что вы увидите чёрные области. Последующие этапы AliceVision не используют настоящую матрицу камеры. Вместо этого мы притворяемся, что у камеры есть новая матрица без искажений, а 05_PrepareDenseScene деформирует исходное изображение под эту вымышленную матрицу. Поскольку этот новый виртуальный сенсор больше настоящего сенсора, некоторые области окажутся пустыми (чёрными).
06_CameraConnection
Строго говоря, этот этап нарушает принцип нашего рабочего процесса. Все этапы были разработаны так, чтобы каждая папка становилась совершенно уникальным отдельным этапом. Однако 06_CameraConnection создаёт в папке 05_PrepareDenseScene файл camsPairsMatrixFromSeeds.bin, потому что этот файл должен находиться в той же папке, что и изображения без искажений.
07_DepthMap
Это самый долгий этап AliceVision: генерирование карт глубин. Он создаёт карту глубин для каждого изображения как файл EXR. Я настроил его, чтобы это было проще заметить. Вы можете увидеть небольшой «язык», торчащий из дерева.
Поскольку этот этап занимает много времени, существует параметр, позволяющий нам запускать группы разных камер как разные отдельные команды. Поэтому если у вас есть 1000 камер, то можно создавать карты глубин для групп камер на разных машинах фермы. Или же можно разбить выполнение работы на мелкие группы, чтобы при сбое одной машины не нужно было повторять заново весь процесс.
08_DepthMapFilter
Исходные карты глубин не будут полностью согласованными. Некоторым картам глубин потребуется видеть области, перекрытые другими картами глубин. Этап 08_DepthMapFilter изолирует такие области и принудительно обеспечивает согласованность глубин.
09_Meshing
Это первый этап, на котором непосредственно генерируется меш. С мешем могут быть небольшие проблемы, которые можно решить при помощи…
10_MeshFiltering
Этап 10_MeshFiltering получает меш 09_Meshing и усовершенствует его. Он выполняет следующие операции:
- Сглаживает меш.
- Устраняет большие треугольники.
- Сохраняет наибольший меш, но удаляет все остальные.
Некоторые из этих операций в определённых случаях не всегда желательны, поэтому при необходимости параметры можно настроить.
11_Texturing
Последний этап. 11_Texturing создаёт UV и проецирует текстуры. И на этом этапе всё заканчивается!
Последний трюк, который можно сделать с Meshlab: вы можете перетаскивать разные файлы OBJ и PLY как слои.
В моём примере есть слой и для готового меша, и для точек/камер SFM. Иногда этап сглаживания меша может быть слегка агрессивнее, чем нужно, поэтому полезно сравнить исходный и сглаженный меши. Если меш выглядит поломанным, то для отслеживания проблем в конвейере удобно использовать sfm-данные из PLY и меши из OBJ.
Благодарности
Этот пост был бы неполон без огромной благодарности командам разработчиков AliceVision и OpenMVG. Источником вдохновения послужил проект libmv. Этот проект был предшественником OpenMVG, который является репозиторием инженеров/исследователей компьютерного зрения для разработки новых алгоритмов. AliceVision — это форк OpenMVG, созданный специально для того, чтобы превратить эти алгоритмы в отдельное решение в виде готового продукта.
AliceVision/Meshroom — крупный, амбициозный open-source-проект. Его основное достижение — достижение таким серьёзным проектом финальной черты, и мы обязаны ему очень многим. Также мы обязаны поблагодарить команду OpenMVG (и libmv), чья фундаментальная работа позволила создать AliceVision.
Наконец, я хочу сказать особое спасибо Microsoft за VCPKG. VCPKG — это менеджер пакетов, сильно упростивший сборку крупных open-source-проектов под Windows. Несколько лет назад я пытался собрать под Windows OpenMVG. Всё закончилось не очень хорошо. Поэтому когда несколько месяцев назад я услышал об AliceVision, я попытался скомпилировать его, но потерпел неудачу даже с более простыми вещами. Потом я попробовал VCPKG, и всё сразу заработало. Сложно выразить количественно преимущество использования такого проекта, как VCPKG, но он очень помог экосистеме open-source под Windows.
github.com/alicevision
github.com/openMVG/openMVG
github.com/libmv/libmv
github.com/Microsoft/vcpkg