Python(パイソン) ,ソースプログラムリスト あり ,[指定された曲線を、指定された値で、近似的に等分割し、その結果を画面上に表示する] 処理の , [表示用・サブグループ]
Python(パイソン) ,ソースプログラムリスト あり ,プログラム作ってみた ,[指定された曲線を、指定された値で、近似的に等分割し、その結果を画面上に表示する] を 行う へ
-----
2024.8.17 presented in [note] ( //note.com/runningWater/ )
2024.8.24 rewritten
----------
1 はじめに
これ以降に記述されている内容は、このようなコンピューター・プログラムを制作した、というような事を、ただ、述べているに過ぎない。
以下の記述を読んだ人が、それを単に参考にする、というのであれば、問題は無いと、思われる。
しかし、記述されている内容に沿って、その人が、そこに記されているのと同様の制作や作業を行った際に、その制作、作業、コンピューターの作動の結果、使用されたコンピューター等、様々な方面において、何らかの問題が発生しない、という保証は、全くない。
その制作、作業、コンピューターの作動の結果、その人や、その人が所属している組織、その人が使用した様々な機器、インフラストラクチャー等の、身の上にどのような事が起ころうとも、私は一切、責任を負わない。
このプログラムは、Python(パイソン) 言語を使って、記述されている。
----------
2 表示用・サブグループ
他のモジュール群によって作成された、画像データを受け取り、それを、画面上に表示する、という機能を果たす、サブグループである。
このサブグループは、下記の1個のモジュールから構成される。
ファイル名 [DisplayImage.py]
このモジュールの中から、下記への呼び出しが行われる。
Python(パイソン) ,OpenCV2 ,ソースプログラムリスト あり ,プログラム作ってみた ,[画像処理, OpenCV2 使用] を 行う
ーーーーーーーーーー
import cv2
import ImageDataTwoDimensionHandling
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 = 305
window_TopLeft_y = 1
window_MaxSize = 800
#-------------------------------
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 , 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 ( "==================================" )
----------
Python(パイソン) ,ソースプログラムリスト あり ,プログラム作ってみた ,[指定された曲線を、指定された値で、近似的に等分割し、その結果を画面上に表示する] を 行う へ