「PIC AVR 工作室」サイトの日記的なブログです。
サイトに挙げなかった他愛ないことを日記的に書き残してます。
PIC AVR 工作室 ブログ



というわけで、昨日あらためて弄ってみようと思っていた
PythonのRAD環境「PAGE」。tkinterのウィジェットをGUI
画面上で配置できるツール。
以前使ってみたときには、Windows上のThonnyで開いて実行
してみたら、編集画面は出てきたものの、なぜか編集中に
こけちゃう事象がたくさん出てきて困ってしまったやつ。

今回は、VirtualBox上のLinux Mintで改めて弄ってみる
ことにした。

https://sourceforge.net/projects/page/

まずMint環境上でPAGE本体をダウンロードして、コマンド
ラインで実行してみたんだけど…エラー。

ModuleNotFoundError: No module named 'tkinter'

え?そもそもtkinterって、Python3に標準で入ってるはず
じゃん!なんか、ダウンロードしたpage.pyのスクリプト中
にバグでも入ってるの?考えにくいんだけど…と思って、
コマンドラインで直接Python3インタプリタを起動して、
ためしにimport tkinterをやってみると、同じエラーが出る。

なんで?などと思いながら検索してみると、

https://yukituna.com/2018/

どうやら、Ubuntu系ではpython3-tkっていうパッケージを
入れないとだめらしい。aptでインストールしてからやり
なおしてみると、どうやらimportできた。

で、PAGEを起動してみる。

うんうん。普通に動いているっぽいなぁ… ようやく
動かせる環境が出来た。
すくなくともWindowsのThonny環境と違って安定して動いて
いるっぽい…

とか思った矢先、配置したウィジェットを削除した途端に
落ちた。
まぁ、Windows環境で使うよりは安定している感じがあるん
だけど、落ちることは落ちる。まれに。

ちなみに、Windowsの場合でエラーが出たときのダイアログ
というかエラーウィンドウ。



なにやらファイルが見つからない云々なので、これって
いわゆる全角文字pathでファイルが見つからないっていう
アレかと思ってたんだけど、Linux Mintでも出るってことは、
そういうことじゃないんだろうなぁ。なんだろう?

検索してみた感じでは、なんかいい情報にぶつからなかった。
(というか、PAGE自体の情報がそんなに多くない)

コミュニティーがあったら、そこでちょっと相談してみたい
ところなんだけどなぁ。
一歩前進したように見えて、前進せず。





https://www.youtube.com/watch?v=Hzeiaev47_Y

>小さくて安い車は過去のものになる!?

あぁ…。なんとも暗い未来しかみえないよなぁ。
超高回転のNA VTECだけじゃなく、そもそもコンパクト
なファミリーカーすらもなくなっちゃう近未来…。





https://twitter.com/kei_sakurai/status/1458978267759714308

>二酸化炭素からでんぷんを人工合成するプロセスを開発
>――農業によるでんぷん生産を置換する

これは面白いお話な気がするんだけど、実現性としては
どうなんだろう?
そもそも、でんぷんにする前のメタノールになった時点で、
燃料としては使えるんだよなぁ?(メタノール燃料って
炎がみえなくて危ないんだけど)




https://twitter.com/Stalin_Bot_JP/status/1458725943590023178

これは、10:0でランボルギーニが悪い。




https://www.beep-shop.com/ec/products/detail/17338

>アーケード未発売・未稼働ゲーム大全

これは見てみたいなぁ。すごい面白そう。




https://www.youtube.com/watch?v=4z33DlSb290

もへじさんの鳴門大橋のお話。面白かった。




PostgreSQL本読み終わった。なかなかヨカッタ。もう少し
深く言及してくれるといいなぁ、ってところもあったん
だけど、基本的に知りたいところは大体わかってヨカッタ。

といっても、読んだだけで手を動かしてないんだよな。
手を動かさないとな。やっぱ。



コメント ( 0 )




ここのところ、飯時に読んでる/た本といえば、C#と、
tkinter関係と、あと今読んでる

http://www.k-techlabo.org/www_python/python_main.pdf

このkivy+PythonのGUI開発関係の資料。で、この読んでる
最中のこのpdfがなかなかPython関係の書籍としてもよく
纏まっている感じがあって、じっくり読んでるところ。

print関数の中身(引数)で、フォーマットいじりたいって
時って、最近なら「f文字列」を使うのがラクチンだったり
するので使ってるんだけど、この本読んでたら、改めて
文字列オブジェクトのformatメソッドとか、%使う方法
(文字列%変数で置換できるやつ)なんかを綺麗にまとめて
あって、うろ覚えな感じのアタマをよく整理出来てよかった。

kivyのGUI周りの本と思って読み始めたんだけど、なかなか
Python全般について書かれてて良い感じ。kivyについては
使うかどうかわかんないのと、なんだかんだで最近tkinter
になじみつつあるので。

でも、print関数の引数でつかうにしても、文字列操作単体
で使うにしても、文字列のformatメソッド使う方法が、
一番「文字列を操作して置換してますよ」感が強く表現
されるので、コード自体は読みやすい気がしてる。

まぁ、なんにしても、Python関係いじってる人で、でも
Pythonに精通してるわけでもなくって、時々Python使ってて、
困ったらググりながら…っていうような、オイラみたいな
初心者に毛が生えたみたいな人にはお勧めしたいpdf書籍
だったりする。
手を動かしながら、っていう感じの内容なので、多分
全くの初心者にも向いているような気がする。




なんか、最近に始まったわけじゃないんだけど、気が付くと
Aliexでなんか注文してたことに気づくんだよな。

気づいたら、こんな小型ボールヘッドとか、

https://ja.aliexpress.com/item/1005002375340196.html

こんなストラップとか、

https://ja.aliexpress.com/item/32970553150.html

こんなちっこい三脚とか、

https://ja.aliexpress.com/item/33004177659.html

あれこれ注文してて、「あぁ、こないだ新しい中古の
コンデジ買ったからだ…」とか思い出したりする。
ボールヘッドと小型三脚は、いつも持ち歩いてるバッグ
にポンと入れておけるような軽量三脚にして、コンデジと
一緒に持ち歩けば…と目論んで買ったような記憶がある。
(というか、思いついた時に無意識に買ってたような
気がする)

あと、この角を丸めるパンチなんかは、こないだ
ダイソーで探して見つからなかったから注文してたり、

https://ja.aliexpress.com/item/1005002836177070.html

こないだ雨降った日には、やっぱミラー見づらいよなとか
思って、

https://ja.aliexpress.com/item/1005002674807963.html

こんなの注文してたり。

なんか、Aliex便利だからふと気づくとあれこれ注文して
いたりするんだけど、ホントに必要なものなのかを考える
前に注文してたりするのが、Ali地獄というやつなんだ
ろうな。
まぁ、思い付きでネットショッピングするのいくない。




https://twitter.com/Konimiru/status/1431797146005639172
https://twitter.com/Konimiru/status/1431797471240355846

あぁ、坊主地獄いいよなぁ。あそこが一番好きかもしれん。
ちなみに、地獄めぐりの他の6つの地獄と、坊主地獄は
あまり仲が良くないとかって昔聞いた記憶があるんだけど、
今はどうなんだろう?チケットも、他の6つは共通券だった
気がするけど、坊主地獄だけは別だったような。


https://twitter.com/Konimiru/status/1427661129304592385
https://twitter.com/Konimiru/status/1432728048101564423

かなりのハイスコアだったの気になってたけど、多分
塩分とりすぎなんじゃないかなぁ?





https://k-tai.watch.impress.co.jp/docs/news/1347545.html

Windows11、Androidアプリは当初非対応…って、目玉だった
んじゃなかったっけ?

https://www.itmedia.co.jp/news/articles/2108/28/news029.html

対応プロセッサ少し増えるらしいけど、まぁ、数個だけって
感じみたいだな。第4世代とか、オイラがバリバリ使ってる
古いPCまで対応することはないだろうと思ってた。

でも、この記事でも触れられてるのと、こないだの動画でも
見たように、ISOイメージから自分でインストールするなら、
(レジストリいじる必要はあるみたいだけど)古いPCでも
インストールできることは出来るみたいなんだよな。

古いノートPCにインストールしてみて、ちょっと試して
みようかなぁ?

>ただし、Microsoftは「最小システム要件を満たしていない
>デバイスでは、カーネルモードのクラッシュが52%多くなる」
>としている。

なぜ52%なのかがよくわからないけど、あれかな、新しい
プロセッサで使ってる命令なんかが処理できるかどうかに
ついて、Windows10だと分岐してどっちでも処理できるように
してあったのが、その辺の処理を取っ払ったりして、新し目
のCPUじゃないと暴走したりエラーになったりってことだったり
するのかな?





https://twitter.com/kojima_sakura/status/1432684379529101313

https://twitter.com/kuramochijin/status/1432628063989211137

https://twitter.com/RyuichiYoneyama/status/1432344136544239620

https://twitter.com/tekina_osamu/status/1432600396527144960

なんかねぇ。コロナ以外にも、明るくないニュースいっぱい
だなぁ。しかも天災とかの災害じゃなくて、明らかに人災
というか、70年前と同じようなことしてて、でも現代はもっと
良くない方向に進んでいるような気がしてるんだよな。

もうじき、70年前と同様に、焼け野原の戦後がやってくる
ような気がするんだけど、でも悪いことに、その先には
「高度成長」のチャンスはやってこないんだよな。
この国にはもう。
そういうチャンスは、発展途上国から先進国に変わっていく
過程で1回だけなんだよな。




https://www.youtube.com/watch?v=L5Atx_oQn18

いつもの茸本朗氏チャンネル動画。親子丼とは?




https://www.youtube.com/watch?v=iQcSpFlPI8k

セメント電池。面白いなぁ、と思ったものの、驚くほどの
電池寿命の短さ。よほどのブレイクスルーが無い限り、
実用にはならないよな。

現状の改善方法のデメリットについては、もしかしたら
建物じゃなく、道路の舗装材として、アスファルトの
代わりにコンクリートにするって手なら、もしかしたら
使い道あるのかもしれないなぁ。



コメント ( 0 )




ここんところちょっとずつ弄ってるPythonプログラム。
OpenCV使って、ビデオファイル読み込んでフレーム単位で
変化があるかどうか(フリーズしてるかどうか)をチェック
するプログラムを書いてるんだけど、なかなか思うような
パフォーマンスが出せなくて困ってるとこ。


VGAサイズとか、QVGAサイズとかなら、それなりに高速に
処理できるんだけど、FHDサイズとかになっちゃうと、
映像の実時間の10倍とか20倍とかの処理時間が掛かっちゃって、
全然現実的じゃない。

なので、処理時間が遅い原因と、どうしたら高速化できるか
について、実験しながらプログラムをいじってたとこ。

まず、一つの仮定としては、画面の左上から順々にピクセル
単位で走査してるんだけど、画面四隅は比較的変化が少ない
場合が多いので、真ん中から広がるように走査していく方が
良いんじゃないかな?と。異なるピクセルを見つけた時点で
次のフレームに移れるので。

で、ロジックをいじって、操作する順番を変化させてみた。

…結果、あまりパフォーマンスが上がらない。ロジック的
には、それ以上劇的に速くできそうな方法は思いつかない
のと、多分そもそも、ロジック以外の部分で処理時間を
食っているっぽい。つまり、OpenCVが映像ファイルから
フレームを取り出すときに、numpy形式に変換しているあたり
が遅いんじゃないかなぁ?と。

骨董品の第4世代Core i3使って画像処理するのが間違いと
いえばそうなんだけど、うちには桁違いに速いマシンが
他にあるわけじゃないし、まぁ、仕方ない。

(でも、驚いたことに、自分で書いた処理自体はシングル
スレッド的な単純なものなんだけど、ライブラリ内部では
マルチスレッド対応しているみたいで、CPUメータ見ると
4コア…正確には2コア4スレッド…全部に負荷が分散されて
いることが判った。偉いね。すっごいCPU使ったら、
ちゃんとガンガン処理が回るんだろうなぁ)

気を取り直して、全フレームチェックすることを放棄する
モードも取り付ける。具体的には、5フレーム単位で飛ばし
飛ばしチェックするとか。フリーズする場合は、だいたい
数秒とか止まるみたいなので、それを検知できることに
主眼を置こうと。あと、走査するラインも、全行じゃなくて
5行おきとかにしちゃっても、実質的にはあまり影響ないはず。

で、やってみた。走査するラインを間引く方法では、ほとんど
速度が上がらない。つまり、ロジック以前に、OpenCV側で
映像ファイルからフレームを切り出してnumpy形式にするって
時点で、かなり時間掛かっちゃってるってことが見えてくる。

で、フレーム間引きの方は、実際に間引いたフレームの割合
だけ速くなるって程の効果は無いけど、そこそこ期待に見合う
効果は得られた。よし。


あと、明らかにフリーズしてるフレームがあるのに、チェック
から漏れるものがあるので、その辺もなんとかしないといかん。

映像(というか、多分圧縮の具合)によっては、全ピクセル
が完全一致しているかどうかでチェックできるんだけど
(さすが、フレーム間でも圧縮を掛けている結果)、映像に
よっては微小なノイズを拾っているみたいで、それが異なる
映像とみなされてしまっているみたい。

なので、ある程度の許容範囲誤差を認めて、その範囲内なら
同一ピクセルであると判断するようなロジックに変更。

目下実験中。なんか思ったような効果になってない。なにか
numpy形式のピクセルデータの扱いを間違えているのか…。

なかなかうまくいかないなぁ。

まぁ、入力ファイルをファイルダイアログで拾えるように
したり、処理結果を描きだしているテキストボックスの中身
をファイルダイアログでファイル保存できるようにしたりと
いった、UI周りは少し進展したので、とりあえずロジック
の方に注力しよう。





https://www.youtube.com/watch?v=Z9ki00Z5SWg

>プログラミング学習の救世主?任天堂の“絶対に挫折
>させない”プログラミングゲームvs片渕アナ

飛ばし飛ばしみたんだけど、なんかこういうプログラミング
教育(?)環境って、なんかニンテンドーが作るとすごいな。





https://www.fnn.jp/articles/-/203960

送り付け商法。すぐに捨てても良くなるらしい。ほほう。





https://news.yahoo.co.jp/articles/9890937f0673f003c5d532a6b500b21da0ad9aa5

>米、日本の技能実習を問題視 国務省が人身売買報告書

どんどん問題として取り上げればいいと思う。中国の香港
やチベットの問題なんかと同列の問題として。





https://twitter.com/vgm_robot_GACHA/status/1409430859296382976

RB26DETTのガチャガチャ。これは欲しいな。

ちなみにオイラは32に思い入れがあるので、32のが欲しい。





https://twitter.com/lovyan03/status/1410397318923255808

>M5製ライブラリ、全般的に他所のライブラリをライセンス
>無視してモリモリ取り込んだうえでMITライセンスで公開
>しているので大変おっかない

おっかないな。





https://mainichi.jp/articles/20210630/k00/00m/040/237000c

1回の接種でいいと思ってるなら、本人が1回だけ接種して、
人ごみに出かけてみればいいんだよ。(黄金律テスト)



コメント ( 0 )




引き続き、Python+tkinterでツール作ってるとこなん
だけど、2つほど、あれこれ調べててうーーーむという
ところが。

一つは、テキストボックス。テキストを追加していって
行が1画面より増えたら、自動的にスクロールバーが出て
来たりするんだろうと思い込んでたんだけど、どうやら
そうじゃなかった。

https://engineer-jobchange.com/python-gui-tkinter-scrollbar

自分でスクロールバーを配置して、ちゃんと動くように
しないといけないらしい。そうなのか。

もう一つは、長時間ループしている時に、ボタンクリック
一発で中断したりできないものなの?と。

https://base64.work/so/python/1175752

https://teratail.com/questions/224279

これもちょっと面倒みたい。どうやら、.afterっていうの
を使うみたい。ほほう。




https://sorae.info/astronomy/20210630-bernardinelli-bernstein.html

おぉ!巨大彗星。直径100~200kmですと。すごいね。
残念なことに、あまり太陽すれすれまで近づいては
こないみたい。最接近で11AUくらい。土星の距離にある
直径100kmの点ってなると、そこらの望遠鏡じゃ見えない
だろうなぁ。

でも、すでにコマが形成されているらしい。




https://www.youtube.com/watch?v=QQgMeEE-qIk

いつもの熊五郎お兄さん動画。どうやらJYETeckの
DSO-SHELLに手をだしたらしい。
何気に便利なんだよな。小さくて機動性高いから。




https://www.youtube.com/watch?v=_9Ah4U3QmVQ

Windows11のあれ。TPM1.2と2.0の違いがよくわかった。
このチップって、何してるんだろう?SSL通信なんかで
暗号化復号化なんかをやってるのかなぁ?と思ったら、
そのまんまだった。BitLockerなんかも使ってるのかな?
暗号化処理のコプロという感じだな。

HDD、SSDの暗号化(BitLocker)とかもオイラは使って
いないから、あまりありがたみが無いんだよなぁ。なんで
これを必須にするんだろうか?やっぱ、単に古いPCからの
乗り換えを強制的に排除する目的なのかな。2015年販売の
Windows10を、10年後にサポート終了すると…。これまでの
Windowsと大体同じサイクルで打ち切りってことだな。

USBどんぐりをサクッと挿して使えるようにするデバイス
の登場を望むところ。もしくは、PCIeか何かでポン付け
出来ないのかな?


それにしても、マイクロソフトがどんだけアプリストアを
充実させようとしても、Amazonと組んでAndroidアプリを
動かせるようにしようとも、少なくともAndroidに関する
限り、Windows11対応機に乗り換えるという選択肢よりも
魅力的なものがあれば、かなりのユーザが乗り換えを
考えるタイミングになると思うんだよな。

こないだも書いたけど、買収したCloudReadyに、Googleが
正式にAndroidのGoogle Playをサポートしちゃえば、
MS+Amazonなんぞ足元にも及ばないわけだから、Windows
アプリにあまりこだわらない(もしくはAndroidやLinuxで
代替アプリがある)人であれば、一気にChromeBookや
CloudReadyに移っちゃう人はいっぱいいると思うんだよな。

ユーザ数第2位のChromeBookが、もしかしたらWindowsの
ユーザ数に一気に近づく可能性もあるよなぁ。それは
それでちょっと面白そうではある。

ただ、やっぱGAFAに牛耳られるのもなんかなぁ?という
気持ちもなくはない。

ChromeBook対抗馬としての、Ubuntu Webはどうなんだろう
なぁ?目指すところはChromeBook・CloudReadyとほぼ同じ
なんだけど、対抗馬があるっていうのは好きなんだよな。



コメント ( 0 )




地味に進行中。Python+tkinterで、CLIアプリをGUIアプリ
に書き直し中。

テキストボックスを配置して、その中に文字列を足して
いって、最終的にはそのテキストボックスの中身をファイル
に吐き出したいので、その辺のテストプログラムを。

最初、テキストボックスに文字列を追加するのなんて、
適当にゴニョゴニョすればいいんだろうと思って動かして
みたら、思っていたものとはちょっと違う形になって
しまった。あとから追加したものが、テキストボックスの
先頭に追加されていくという処理になっちゃって、いやいや、
末尾に追加したいんだよ…と思ってちょっと調べなおし。
とりあえずできた。

大体パーツがそろってきた。あとは、テキストボックスに
書かれた内容をファイル保存も可能なようにすればいい感じ
になりそうだな。

最大の問題は、元のCLIのプログラムが、思ってる以上に
遅いってことかな。内容によって、ものすごい時間が
掛かっちゃうっぽい。テスト用に用意したVGAサイズくらい
の映像ファイルならいいんだけど、FHDサイズだったりすると
元の再生時間より一桁以上遅くなっちゃうかもしれん。
(もしかしたらならないかもしれん)

OpenCVのビデオ入力機能を使って、1フレームずつ取り出して
チェック入れていくんだけど、これ以上はロジック面では
根本的な対策が出来そうにないので、やるならC言語とかで
ガリガリ書いていく感じじゃないと、速度上げにくいよな。
こまったな。

精度を下げてでも端折る方向で考えるのがいいのかな。





https://monoist.atmarkit.co.jp/mn/articles/2106/28/news007.html

Raspberry Piのセキュリティ対策。ちょっとこれ読んで
みたいなぁ。




https://www.youtube.com/watch?v=A3Rx2sDnC-U

ひさびさに、ひよりふぁくとりーchの動画。(ただし告知だけ
だけど)




https://twitter.com/potetoichiro/status/1409043676165070849

余弦定理。最初パッと見てなんだかわからなかったんだけど、
良く眺めてみたら、なるほどってなる内容だった。面白い。




https://twitter.com/Seiren_Voice/status/1409002861996888076

もう、日本の半導体なんて、昭和の考え価値観を完全に過去に
捨て去ってから再構築しないとだめだろうし、そうしても
追いつけるかどうかは怪しいよな。




Windows11の件。
メインのNEC Mate(第4世代Core i3)については、まだちょっと
確認できる環境が作れてないからアレだけど、ノートPCの
第6世代Core i5機はさすがに新し目だから対応できてるんじゃ
ないの?と思って調べてみた。

TPMのバージョン表示させてみると…何も表示されない。なんだ
これ?と思って、BIOS画面開いてみても、なんかそういう項目
見当たらない感じだし、メーカーサイトでスペックを見直して
みると、どうやら個体によってTPM入ってるモノと入ってない
モノがあるっぽい。どうやらオイラのは入ってないっぽいな。
なんだよ…。

しかも、入ってる個体についても、メーカー情報では1.2止まり
らしいし、ってことは、もっと新しい機種じゃないとやっぱ
だめなのか…。
情報では、2.0が必須になったのは第8世代かららしいから、
手を出すなら第8世代以降ってことになるのかな。


https://japanese.engadget.com/microsoft-without-tpm-oem-windows11-060004500.html

一方そのころロシアと中国では。

TPMなしのPC出荷を認める…と。よくわからないけど、この手の
モノを強制するのって、中国やロシアみたいなところを意識
してのことだと思ってたのに、それらの国を除外したら、
あまり意味なくないのかなぁ?

まぁ、何にしてもWindowsユーザを事実上切り捨てることに
なるってことは、他のOSの選択肢に乗り換えるユーザが増える
ってことだよな。

https://twitter.com/cozy901ch11/status/1409457912859095045

ChromeOS(記事中ではCloudReady使ってるみたい)に乗り換え
するのがいいんじゃね?って話になって来ているけど、まさに
Googleにとっては新規でごっそりユーザをいただくチャンス
ってことになるだろうから、なんかしら手を打ってくるだろう
なぁ。
現状、フルスペックのChromeBookと、OS単体で入手できる
CloudReadyの大きな違いといえば、Android環境なわけだけど、
その辺手を打てば、今のスマホみたいに、Google Playユーザ層
を一気に増やせるチャンスに他ならない…と。




https://twitter.com/mikeponjp/status/1408939548063584257

CentOSについても、アレな感じになっててアレなんだけど、
レッドハット系からDebian系に移る人もたくさん居るん
だろうなぁと思っていたら、

https://www.youtube.com/watch?v=6RsB8Bx4Tlw

RockyLinuxって、なんだ?これはこれまでのCentと同じように
使えるってモノなのかなぁ?
(動画見終わって、よく理解できなかった)

まぁ、オイラはDebian系ばかり使ってるから、Centとかは
使い方よくわからないんだよな。




https://tonarinoyj.jp/episode/3269754496373404204

ワンパンマン、新しいの来てた。





https://diamond.jp/articles/-/270380

>国際的「男尊女卑国」日本、世界とズレる大きな理由

これも、昭和脳のじーさんバーさんたちが表舞台からいなく
ならない限り無理だろうし、その層が消えてもその下の層
も多かれ少なかれマッチョな思想を持ってたりするから、
あまり改善されそうにないなぁ。




https://twitter.com/mdk_dai/status/1409455305985912832

>スウェーデンの首相、スウェーデン政府がコロナ禍初期に
>感染拡大をロックダウンなどで止めることをせず、結果的に
>多くの国民の命を犠牲にした責任を取って、先程、辞任
>しました。

やっぱり先進国だな。



コメント ( 0 )



« 前ページ 次ページ »