[断面画像を重ね合わせて、物体を3次元表示]の , [表示用・サブグループ]
[断面画像を重ね合わせて、物体を3次元表示], Python(パイソン) 使って作ってみた ,ソースプログラムリスト あり へ
-----
2024.8.23 presented in [note] ( //note.com/runningWater/ )
2024.9.14 プログラム改変に伴う、書き直しを行った
----------
1 はじめに
これ以降に記述されている内容は、このようなコンピューター・プログラムを制作した、というような事を、ただ、述べているに過ぎない。
以下の記述を読んだ人が、それを単に参考にする、というのであれば、問題は無いと、思われる。
しかし、記述されている内容に沿って、その人が、そこに記されているのと同様の制作や作業を行った際に、その制作、作業、コンピューターの作動の結果、使用されたコンピューター等、様々な方面において、何らかの問題が発生しない、という保証は、全くない。
その制作、作業、コンピューターの作動の結果、その人や、その人が所属している組織、その人が使用した様々な機器、インフラストラクチャー等の、身の上にどのような事が起ころうとも、私は一切、責任を負わない。
このプログラムは、Python(パイソン) 言語を使って、記述されている。
----------
2 表示用・サブグループ
他のモジュール群によって作成された、画像データを受け取り、それを、画面上に表示する、という機能を果たす、サブグループである。
このサブグループは、下記の1個のモジュールから構成される。
ファイル名 [DisplayImage.py]
ーーーーーーーーーー
import cv2
import ImageDataTwoDimensionHandling
#**************************************
import ParametersContainer
#**************************************
MODULE_NAME = "DisplayImage"
def display_image ( arg_ins_ImageDataTwoDimensionHandling ) :
function_name = "display_image"
print ( "==================================" )
print ( "Enter into Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "==================================" )
#-------------------------------
#************************************************************ # window_TopLeft_x = 345
# window_TopLeft_y = 1
window_MaxSize \
= ( int ) ( ParametersContainer \
.global_par_window_for_display_image_window_MaxSize )
# window_MaxSize = 400
#************************************************************
width_of_ImageData = \
arg_ins_ImageDataTwoDimensionHandling.get_width_of_ImageData ()
height_of_ImageData = \
arg_ins_ImageDataTwoDimensionHandling.get_height_of_ImageData ()
print ( "==================================" )
print ( "Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "passed phase_1" )
print ( "width_of_ImageData = " + str ( width_of_ImageData ) )
print ( "height_of_ImageData = " + str ( height_of_ImageData ) )
print ( "==================================" )
imageData_for_display = \
arg_ins_ImageDataTwoDimensionHandling \
.get_loaded_image_data (
MODULE_NAME
, function_name
)
print ( "==================================" )
print ( "Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "passed phase_2" )
print ( "==================================" )
# if need , resize
if ( width_of_ImageData > height_of_ImageData ) :
if ( width_of_ImageData > window_MaxSize ) :
resized_height = \
round ( height_of_ImageData * ( window_MaxSize / width_of_ImageData ) \
)
imageData_for_display = cv2.resize ( \
imageData_for_display \
, dsize = ( window_MaxSize, resized_height ) \
)
else:
if ( height_of_ImageData > window_MaxSize ) :
resized_width = \
round ( width_of_ImageData * ( window_MaxSize / height_of_ImageData ) )
imageData_for_display = cv2.resize( \
imageData_for_display \
, dsize = ( resized_width, window_MaxSize ) \
)
#display image
cv2.imshow ( MODULE_NAME , imageData_for_display )
cv2.moveWindow ( MODULE_NAME
#********************************************
, ( int ) ( ParametersContainer \
.global_par_window_for_display_image_TopLeft_x )
, ( int ) ( ParametersContainer \
.global_par_window_for_display_image_TopLeft_y )
# , window_TopLeft_x
# , window_TopLeft_y
)
#********************************************
print ( "==================================" )
print ( "Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "passed phase_3" )
print ( "==================================" )
#wait pushing key
# cv2.waitKey ( 0 )
#if key is pushed, close display
# cv2.destroyAllWindows ( )
print ( "==================================" )
print ( "Exit from Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "==================================" )
#------------------------------------
def func_destroy_window ( ) :
function_name = "func_destroy_window"
print ( "==================================" )
print ( "Enter into Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "==================================" )
cv2.destroyAllWindows ( )
print ( "==================================" )
print ( "Exit from Module = " + MODULE_NAME
+ " , function = " + function_name )
print ( "==================================" )
-----
[断面画像を重ね合わせて、物体を3次元表示], Python(パイソン) 使って作ってみた ,ソースプログラムリスト あり へ