<jupyter_start><jupyter_text>べき乗測変換\begin{equation}  s = T(r) = (L-1)\left(\frac{r}{L-1}\right)^\gamma\end{equation}  画像ファイルの準備以下では、画像ファイルを手元からアップロードする方法とURLを指定してアクセスする方法のいずれかを利用してください。 アップロードする方法<jupyter_code>#from google.colab import files
#uploaded_file = files.upload()
#file_name = next(iter(uploaded_file))
#print(file_name)<jupyter_output><empty_output><jupyter_text>URLを指定してアクセスする方法- 参照サイト：　http://homepages.cae.wisc.edu/~ece533/images/<jupyter_code>import urllib.request
import io

url = 'http://homepages.cae.wisc.edu/~ece533/images/lena.png'
file_name = io.BytesIO(urllib.request.urlopen(url).read())<jupyter_output><empty_output><jupyter_text>画像の読み込み画像処理ライブラリ Scikit-image を利用<jupyter_code>from skimage import io
img = io.imread(file_name)
img.dtype<jupyter_output><empty_output><jupyter_text>画像の表示可視化ライブラリMatplotlibを利用<jupyter_code>from matplotlib import pyplot as plt

plt.imshow(img)
plt.axis('off')<jupyter_output><empty_output><jupyter_text>グレースケール画像に変換<jupyter_code>from skimage.color import rgb2gray

gray_img = rgb2gray(img)
display(gray_img.dtype)
gray_img.max()<jupyter_output><empty_output><jupyter_text>グレースケール画像の表示PIL画像をNumPy配列(float32)に変換し，[0,1]の範囲に正規化して表示<jupyter_code>import numpy as np

plt.imshow(gray_img, cmap='gray')
plt.axis('off')<jupyter_output><empty_output><jupyter_text>べき乗測変換のグラフプロットパラメータ$\gamma$を設定して関数をプロット<jupyter_code>gamma = 0.5

r = np.linspace(0,1,100)
s = np.power(r,gamma) 
plt.plot(r,s)
plt.axis('square')
plt.xlabel('r')
plt.ylabel('s')
plt.show()<jupyter_output><empty_output><jupyter_text>画像のべき乗測変換NumPyライブラリの power 関数を利用<jupyter_code>res_img = np.power(gray_img,gamma)<jupyter_output><empty_output><jupyter_text>処理結果の表示<jupyter_code>plt.imshow(res_img,cmap='gray')
plt.axis('off')<jupyter_output><empty_output><jupyter_text>符号なし整数8ビットに変換<jupyter_code>res_img_uint8 = np.uint8(255.0*res_img)
display(res_img_uint8.dtype)
res_img_uint8.max()<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.14144565782631305, 'fraction_numerical': 0.015600624024960999, 'mean_word_length': 12.0, 'pattern_counts': {'":': 0, '<': 41, '<?xml version=': 0, '>': 41, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '10', 'dir': 'jupyter-structured-clean-dedup', 'id': '206216', 'license': 'MIT', 'n_tokens_mistral': 1013, 'n_tokens_neox': 986, 'n_words': 68, 'path': 'python/vie_sec4_powerlaw.ipynb', 'repo_name': 'shodimaggio/VieWork', 'size': '1923'}