Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Python_超人
宇宙模拟器
提交
c06c33ca
宇宙模拟器
项目概览
Python_超人
/
宇宙模拟器
通知
19
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
宇宙模拟器
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
c06c33ca
编写于
7月 04, 2023
作者:
三月三net
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Python超人-宇宙模拟器
上级
f9fdbea7
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
19 addition
and
5 deletion
+19
-5
tools/sim_video_3d_cap_ext.py
tools/sim_video_3d_cap_ext.py
+19
-5
未找到文件。
tools/sim_video_3d_cap_ext.py
浏览文件 @
c06c33ca
...
...
@@ -9,6 +9,7 @@ import win32ui
import
win32con
import
win32api
import
traceback
import
threading
def
get_window_handle
(
window_name
=
"宇宙模拟器(universe sim)"
):
...
...
@@ -115,14 +116,17 @@ def show_image(img):
def
video_write
(
video
,
l_frames
,
r_frames
):
if
len
(
l_frames
.
keys
())
==
0
or
len
(
r_frames
.
keys
())
==
0
:
return
min_index
=
min
(
r_frames
.
keys
())
max_index
=
max
(
r_frames
.
keys
())
print
(
"index:"
,
end
=
''
)
for
index
in
range
(
min_index
,
max_index
+
1
):
rv
=
r_frames
.
get
(
index
,
None
)
lv
=
l_frames
.
get
(
index
,
None
)
if
rv
is
None
or
lv
is
None
:
continue
print
(
str
(
index
)
+
", "
,
end
=
''
)
merged_list
=
[
np
.
concatenate
((
lv
[
i
],
sublist
),
axis
=
0
)
for
i
,
sublist
in
enumerate
(
rv
)]
try
:
video
.
write
(
np
.
array
(
merged_list
))
...
...
@@ -130,6 +134,7 @@ def video_write(video, l_frames, r_frames):
print
(
"video.write ERROR:"
,
str
(
e
))
traceback
.
print_exc
()
break
print
(
""
)
def
handle_3d_video
(
video
,
l_frames
,
r_frames
):
...
...
@@ -137,8 +142,8 @@ def handle_3d_video(video, l_frames, r_frames):
if
temp_frame_data
is
not
None
:
cnt
=
len
(
temp_frame_data
)
for
idx
,
data
in
enumerate
(
temp_frame_data
):
print
(
"对视频进行3D处理(%s/%s)
"
%
(
idx
+
1
,
cnt
+
1
))
for
idx
,
(
f
,
data
)
in
enumerate
(
temp_frame_data
):
print
(
"对视频进行3D处理(%s/%s)
->%s"
%
(
idx
+
1
,
cnt
+
1
,
f
))
video_write
(
video
,
data
.
left_frames
,
data
.
right_frames
)
print
(
"对视频进行3D处理(%s/%s)"
%
(
cnt
+
1
,
cnt
+
1
))
...
...
@@ -190,7 +195,7 @@ def clear_frame_temp_files():
shutil
.
rmtree
(
"frame_temp"
)
def
create_frame_temp_files
(
file_index
,
left_frames
,
right_frames
):
def
create_frame_temp_files
_threading
(
file_index
,
left_frames
,
right_frames
):
data
=
FrameData
(
left_frames
,
right_frames
)
if
not
os
.
path
.
exists
(
"frame_temp"
):
os
.
mkdir
(
"frame_temp"
)
...
...
@@ -199,6 +204,15 @@ def create_frame_temp_files(file_index, left_frames, right_frames):
data
.
save
(
file_name
)
def
create_frame_temp_files
(
file_index
,
left_frames
,
right_frames
):
import
copy
thread1
=
threading
.
Thread
(
target
=
create_frame_temp_files_threading
,
args
=
[
file_index
,
copy
.
deepcopy
(
left_frames
),
copy
.
deepcopy
(
right_frames
)])
thread1
.
start
()
def
get_frame_temp_data
():
if
not
os
.
path
.
exists
(
"frame_temp"
):
return
None
...
...
@@ -208,7 +222,7 @@ def get_frame_temp_data():
temp_file
=
os
.
path
.
join
(
"frame_temp"
,
f
)
fd
=
FrameData
.
load
(
temp_file
)
print
(
"读取临时文件"
,
temp_file
)
temp_frame_data
.
append
(
fd
)
temp_frame_data
.
append
(
(
f
,
fd
)
)
return
temp_frame_data
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录