C#ではzipファイルを扱うライブラリがありますが、今回はzipファイルをバイナリデータとして読み込んんで中身をのぞいいてみようと思います。 wikipediaでZIPファイルのページを眺めていたところZIPファイルの構造の情報がありました
C#ではzipファイルを扱うライブラリがありますが、今回はzipファイルをバイナリデータとして読み込んんで中身をのぞいいてみようと思います。 wikipediaでZIPファイルのページを眺めていたところZIPファイルの構造の情報がありました
Python-OpenCVで図形の縁を検出するルーチンを考える
全てのピクセルの左右上下を検査し縁に当たる部分か調べる方法で縁取りをしてみます。 import cv2 import numpy as np def createBaseImage(): # 黒色のキャンバス(512x512)作成 img
WPFで動画ファイルを再生するサンプル「イベントの動作確認」
MediaElementはWPFで動画を再生することが出来るコントロールです。 今回は動画を再生した際どのようなイベントが発生するか確認してみます。 サンプルプログラム ファイル名:MainWindow.xaml <Window x:
インターフェイスを使ったことはあっても自分で作る機会ほどんどないのですが、たまたま使わざるをえない状況になりましたので、サンプルプログラムを書いてみたいと思います。 using System.Collections.Generic; nam
「Border」の名称から罫線を引くコントロールと予想しますが、実際どのような代物なのか試してみます。 XAMLにborderをセット <Window x:Class="BorderSample.MainWindow&quo
C#でWPF学習中「WPFプロジェクトを作成するスクリプト3」
前回にクラスライブラリとコンソールプロジェクトを使えるようにしましたが、今回はシンプルにWPFのアプリケーションを作成するプロジェクトを作成します。 WPFプロジェクトを作成しMicrosoft.Xaml.Behaviors.WpfとRea
ZipFileをUpdateモードで開いてzipファイル内のファイル(Entry)を取得Delete()メソッドで削除します。 ソースコード using System.IO.Compression; const string zipfile
C#のWinFormsでINotifyPropertyChangedを使ってコントロールとデータバインディングしてみる。
WPFでINotifyPropertyChangedを使ってみたことがありました。 その後にもっと便利なReactiveProperyを知ったため、長らく忘れていました。 正直MVVMなWPFは小規模なプログラミングだと面倒を感じ、WinF
オープンソース系のソフトで動画出力部分にffmpegが使われている場合が多いのですが、最近とあるアプリケーションで動画を書き出した所、イベントログにffmpeg.exeがクラッシュした旨ログが出力されていることがありました。 .AVIでは成
ファイルをバイト配列に読み込む実験「FileStream.ReadとParallel.For」
SSDに保存されたファイルサイズが216MBのPNG形式画像ファイルがありまして、これをWinFormsのPictureBoxで表示するプログラムを書きます。 // パターン0 using FileStream fs = new(fileN
C#のWinFormsでSystem.DrawingとMagick.NETとOpenCVSharpでPNGファイルのデコード速度を比較
手作りのソフトなので計測なので精度は今一つですが、System.Drawingが一番速い結果になりました。 System.Drawing:22ms Magick.NET:39ms OpenCVSharp:33ms Windows環境で実行し
C#のWinFormsでファイルマネージャを作る3。「サムネイル表示の高速化」
ListViewの動作が遅い原因を探ってみたところ、オーナードローでの描画にサムネイル画像の用意が間に合っていないことが原因でした。 VirtualModeで表示部分だけの描画される動作も、そもそも描画の準備が間に合っていないためスクロール
C#のWinFormsでToolStripなToggleButtonのサンプル
スライドスイッチみたいな見た目を想像しましたが、押しボタンタイプの見た目です。 ソースコード namespace ToolStripToggleButtonSample1; public partial class Form1 : Form
C#のWinFormsでファイルマネージャを作る2。「大きいサムネイル」
前回作成した内容で使ってみたのですが、目的が画像や動画の選択ですので、ファイルの一覧で画像の内容が目視出来たほうが良いことに気が付きました。 ついでにGIMPの.xcfやPhothoShopの.psd及び動画の.aviや.mp4などの内容も
C#のWinFormsでファイルマネージャを作る。「試作編」
少しずつ調べていた機能がだいぶ溜まったので、以前から作ろうと思っていたファイルマネージャ(劣化版エクスプローラー)を作成したいと思います。 アプリケーションのファイルの一覧からGIMPなどの画像加工のアプリケーションに画像ファイルをドラッグ
PowerShellでダウンロードが失敗した場合再試行するスクリプトを試作する。
複数のURLを順番にダウンロードするスクリプトがあるのですが、ダウンロードするURLを配列で管理しているとエラーが発生した際、どこまで実行したか不明になってしまいます。例外処理が行われていないのが原因なのですが、問題点には目をつむってエラー
C#のWinFormsでリストビューを試す。「アイテムにアイコンを表示」
カレントディレクトリのファイルの一覧をリストビューで表示するプログラムを作成しました。 リストビューのアイテムがファイルの場合とディレクトリの場合で別のアイコンが表示されるようになっています。 namespace ListViewSampl
Windows10(11)で絵文字を入力したい場合「Win」+「.」を押す。
自分の環境ではIMEの文字変換では絵文字は出現しませんが、「Win」+「.」でフォームが表示され絵文字を選択することが出来ます。 いつからこの機能が組み込まれたのか知りませんが、自分の生活の中で絵文字を使う機会に恵まれず、最近たまたまWin
C#のWPFのListViewを使って画像の一覧を表示するサンプル。
画像が保存されたディレクトリで、大き目の画像でサムネイル表示が出来ないか調べてみました。 プロジェクトの作成 mkdir プロジェクト名 cd プロジェクト名 dotnet new wpf dotnet add package Micros
GIMPのPython-Fuでディレクトリを引数にプラグインを実行する。
GIMPのプラグインの実行時、ディレクトリを選択しスクリプトへ引数として渡すことが出来るようなので試してみました。 スクリプト #!/usr/bin/env python # coding: utf8 from gimpfu import
C#のWinFormsでコンボボックスのイベントを確認する2。「バリデーション」
コンボボックスはプルダウンメニューの様な選択肢を選択する機能と文字を入力するテキストボックスのような機能が複合されたコントロールです。選択と入力で保持する値が別の方法で変更される可能性があり、イベントの処理を考えると思考を放棄したくなります
C#のWinFormsで絵文字を描くサンプル。「フォルダを描く」
System.Drawing.GrapihcsのDrawStringメソッドを使うと画像に文字書くことが出来ます。 その際フォントを指定することになりますが、絵文字を持っているフォントを指定し、描きたい絵文字を文字コードに指定すると、絵文字
C#のWinFormsでファイルのアイコンを取得するサンプル
C#でエクスプローラーのようなファイルマネージャを作ろうと思い、ファイル表示されているアイコンの取得する方法を調べてみました。 namespace FileIcon; public partial class Form1 : Form {
C#でMagick.NETを使って画像ファイルの幅と高さを取得する。
画像ファイルの幅と高さを取得する方法として、Sysmte.Drawing.Bitmapのオブジェクトを生成し、プロパティのWidthやHeightを参照すれば良いのですが、ファイルサイズが大きな画像ファイルが多量にある場合、毎回Bitmap
WPFに依存するオブジェクトやライブラリをConsoleプロジェクトから呼び出したい。 以前WPFのクラスライブラリを作成しConsoleプロジェクトから参照する方法を試しました。 consoleプロジェクトのcsprojファイル内でTar
C#でWPF学習中「WPFプロジェクトを作成するスクリプト2」
WPFのクラスライブラリを作成し、WPFアプリケーションのプロジェクトとConsoleアプリケーションのプロジェクトから参照するソリューションを作成するスクリプトを作成しました。 スクリプト スクリプト名:Create-WPFSolutio
以前ツリービューでフォルダ構造を表現するサンプルを作成しました。エクスプローラーの左側のような動作をするように作成しましたが、機能的に外部から指定のフォルダーに移動する機能も必要では?と思い試作してみました。 namespace TreeS
PowerShellでカレントディレクトリを一時保存と復帰する「Push-LocationとPop-Location」
PowerShellで一時的にカレントディレクトリを移動させたい場合があります。そのような時「Push-Location」と「Pop-Location」が役に立ちます。 カレントディレクトリが"C:\Users\karet\Doc
パソコンと液晶タブレットの接続方法を確認する。「XPPEN Artist 10」
以前から液晶タブレットというものに興味がありまして、動画などを見て液晶部分に下絵を表示しながらイラストを描くことが出来るガジェットであることは知ってはいたのですが、パソコンとの接続方法を知りたいと思っていました。 入手した「XP」のケーブル
C#リストビューで画像ファイルのサムネイル表示5「サムネイルをzipファイルに保存」
前回作成したプログラムで、サムネイル用の縮小画像を毎回作成するとレスポンスが悪くなるので、一度生成した縮小画像をファイルとして保存し、2回目以降はそれを読み出すようなキャッシュルーチンを組み込んでいました。保存した縮小画像のファイルは不可視
C#のWinFormsでMagick.NETを使ってGIMPのXCFファイルを読み込む
ImageMagickはいろいろな画像フォーマットに対応した画像ライブラリ?です。そちらを.Netに対応させたパッケージを使っています。 GIMPのXCFファイルを読み込むサンプルを作成してみました。 プロジェクトの作成 dotnet ne
C#でSQLiteを試してみる。「サムネイルを管理するテーブルを作る」
サムネイル用の画像ファイルに連番でファイル名をつけたいのですが、それを管理するテーブルをSQLiteで作成します。 SQLiteの主キーをAUTOINCREMENTで自動採番し、その数値をサムネイルのファイル名にしたいと思います。 管理テー
サムネイル用の縮小画像をzipファイルに保存するコードを試作してみました。 namespace _02_image_to_add_zip; using System.Drawing.Imaging; using System.IO.Comp
サムネイル用に縮小した画像が欲しいのです、指定サイズに収まるように画像を縮小するコードを書いてみました。 元画像の縦横比を保持したまま縮小し中央に配置するようにしてあります。 <div class="hcb_wrap&quo
PowerShellでスペース区切りの文字列からsplit演算子でn番目の項目を取り出す。
linux系のcutコマンドと同じようなことをPowerShellでどうするのか考えてみました。 例: まずファイルの一覧をテキストファイルに書き出す Get-ChildItem Select-Object -First 5 >
Webブラウザで表示されている画像をドラッグアンドドロップすることが出来ることに気が付く。
Webブラウザで表示されている画像をマウスでドラックすることが出来ることは気が付いていましたが、ブラウザ上でドロップしても何事も起きず、無意味な機能だと思っていました。 最近とあるショート動画でフリー素材の収集に便利なアプリケーションが紹介
PowerShellテキストファイルの先頭から数行を「Select-Object」で取得する
Select-Objectは様々な機能がありますがFirstオプションを使うとテキストファイルの先頭から数行分を取得することが出来ます。 例: Get-Content textfile.txt Select-Object -First
PowerShellファイルの行数、単語数、文字数を取得するコマンドレット「Measure-Object」
Measure-Objectコマンドレットを使うとテキストファイルの行数、単語数、文字数をカウントし取得することが出来るようです。 まず、読み込ませるテキストファイルを作成 Get-ChildItem > filelist.txt カ
Intel Processor N95搭載パソコンを試してみた「NiPoGi」
Intel Processor N95が搭載されたpcを入手しましたので試してみました。 パソコンの情報 OS : Microsoft Windows 11 Home CPU : Intel(R) N95 GPU : Intel(R) UH
ThinkPad X270を中古で購入した話4。「メモリとSSD交換とWindows11インストール」
X270をセットアップしてみてHDDの遅さに耐えられずSSD化しました。 調べたところケースの裏ブタをあける必要があるので、ついでにCPUグリスの塗りなおしと、メモリの交換も行うことにします。 パーツ交換 まずUEFIで内蔵バッテリーを切り
たまに「とにかく安いパソコンが欲しいだけど」と相談されることがあります。 新品を検索してみたけれど予算が見合わないので、予算に有った中古品をチョイスしてくれという依頼...アドバイスが欲しいということだと思われます。 公官庁払い下げパソコン
リクルートポイントがAmazonでお買い物が出来るようになっていた話
リクルートカードをメインのクレジットカードとして使っています。 カードを使うことによってたまるポイントは、リクルートポイント⇒Pontaポイント⇒SBI証券で投資信託購入の流れで消費していました。運用して最終的には好きなものを買うことに使う
ThinkPad X270を中古で購入した話3。「PD対応充電器と変換アダプタ」
中古で購入したThinkPad X270にはACアダプタが付属していますが、もう一つあると持ち出したりする際重宝するので入手してみました。汎用性を考えてPD(PowerDelivery)対応の充電器とType-C形状のコネクタをX270のA
ThinkPad X270を中古で購入した話2。「セットアップとベンチマーク」
ThinkPad X270を入手して1か月ほど熟成させていました。とりあえずセットアップしながら現状把握と動作確認がてらベンチマークソフトを実行してみたいと思います。 パソコンの情報 OS : Microsoft Windows 10 Pr
筆者個人の自作PCの話ですが、最近マザーボードのUSB2.0ヘッダから拡張スロットにUSB2.0ポートを4つ出すパーツを注文しました。 今時であればUSB3.0以上のポートがあれば不便な場面はありませんが、せっかくUSB2.0ポートがあるの
Windowsのパソコンのデスクトップが起動時に任意のアプリケーションを起動させたい場面があります。 一般的な方法だと「Win」+「R」で「shell:startup」でスタートアップフォルダを開きそちらに起動させたいアプリケーションのショ
PowerShell7でMarkdownで記述されたREADME.mdをHTMLに変換する。
ConvertFrom-Markdownコマンドレットを使うとMarkdownで書かれたテキストファイルをHTMLへ変換することが出来ます。 例:README.mdをREADME.htmlへ変換する。 ConvertFrom-Markdow
WindowsターミナルはURLをクリックすると規定ブラウザで開く機能があることに気が付いた。
最近CLIベースでWebサーバーを起動するプログラム(Stable Diffusion WebUIとか)を良く実行するのですが、サーバーが起動するとコンソールにURLが表示されCTRL+クリックで既定のブラウザで開く旨促されることがあります
PowerShellからSQLiteでファイルのコメントを管理するテーブルを作成する2。
前回テーブルの作成と登録まで作成しましたので、今回は問い合わせスクリプトを組みたいと思います。 まずファイル名で検索するスクリプトを作りたいと思うのですが、スクリプトの引数にファイルのパス(ファイル名)をセットし、コメントテーブルに該当レコ
PowerShellからSQLiteでファイルのコメントを管理するテーブルを作成する。
ファイルに紐づくコメントやサムネイル画像などを管理する方法を模索していて、サフィックスをつけた隠しファイルを作成したり、NTFSのADSを使ってコメントを埋め込んだりしてみました。前者は隠しファイルが意外と邪魔だったり、後者は同一ファイルシ
PowerShellで文字列を整数値に変換する関数「atoi」を作る。
昔読んだC言語の本に、文字列を整数値に変換する関数「atoi()」のソースコードが掲載されており、こんな短いコードで実現できるかと感動した覚えがあります。 探せばその本を今でも発掘することが出来るとは思いますが、プログラミングの勉強としてP
Real-ESRGANとReal-CUGANをGUIから実行できるアプリ
画像をAIでアップスケールする方法としてReal-ESRGANとReal-CUGANがあります。 これらを使いたい場合pythonがインストールされたPCでgithubで公開されているリポジトリからローカルにクローンを作成して、依存している
RGB形式の画像をグレースケールに変換するpythonスクリプト
処理対象の画像ファイルは24bitのRGBですが、内容がグレースケールでRGBの各チャンネルに同じ色がセットされてることを想定します。 そのような場合RGBのいずれかのチャンネルを分離することで8bitのグレースケールにすることが出来ます。
GIMP現在開いている画像をPNG形式で一括エクスポートするプラグイン
複数の画像を開いている状態で、開いている画像を一括エクスポートするプラグインを作成しました。 GIMPのXCFファイルをPNG形式で一括エクスポートするスクリプトは以前から使っていたのですが、コードをpython-fuコンソールにコピー&ペ
PowershellでOracleのデータベースに接続「ODP.NET」
ODP.NETを使いPowerShellからOracleにデータベースへ接続テストをしてみました。 ソースコード ::LoadFile("Oracle.DataAccess.dllのパス") $cs = "Da
VSCodeで画像編集が出来る拡張機能「Luna Paint」
HTML形式で画像に説明を入れる文章を作るのですが、画像をトリミングする必要があり、文書作成と画像加工を一つのアプリケーションで出来ないかとVisual Studio Codeの拡張機能を探してみました。 あるだろうなと思っていましたが、「
ExcelのVBAでADOによるOracle接続を試してみた。
諸般の事情でOracleクライアントのバージョンアップをしたところOO4Oがなくなっており、慌ててADO接続の方法を調べてみました。 Oracle Clientのインストール 「Oracle Provider for OLE DB」を追加で
PCのステータスを表示する専用モニター「THE STAND」を購入した話
CPUの使用率などをモニタリングするためにタスクマネージャーを起動しています。 ただ、作業の邪魔になるので7インチの小さな液晶ディスプレイをつなげてそちらに表示するようにしていました。 マルチモニターになるわけですが、このマルチモニターは便
Google Colaboratoryはインターネットに繋がったウェブブラウザがあればどこからでもPythonのコードが実行できるサービスです。 こちらのサービスを利用するにあたり気になったことを書き残したいと思います。 新規作成 「Goo
Ubuntu22.04DesktopでRembgのインストール記録
Rembgをインストールしたのでその作業ログを残しておきます。 pythonの仮想環境を作成 cd ~/git python3 -m venv rembgvenv 環境名をrembgvenvにしました。 仮想環境の開始 source ~/g
Ubuntu22.04DesktopでSCUNetをインストールした記録
SCUNetをインストールしたのでその作業ログを残しておきます。 pythonの仮想環境を作成 cd ~/git python3 -m venv scunetvenv 環境名をscunetvenvにしました。 仮想環境の開始 source
PowerShellでファイル名のsuffixを削除してくれるワンライナー
画像ファイルなどを一括処理をすると末尾に固有の文字列suffixが付く場合があります。 suffixが不要な場合エクスプローラーでファイル名を変更するわけですが、多数のファイルがあると大変です。 以下のサンプルはファイル名に"_S
Windows11のメモ帳はタブ機能が追加され、複数のファイルを一つのアプリケーションでタブとして同時に編集することが出来るようになりました。 せっかくの新しい機能ですので、それに慣れるように努力するべきだとは思うのですが、タブを閉じ忘れて
Ubuntu22.04DesktopでLama Cleanerのインストール記録
Lama Cleanerをインストールしたのでその作業ログを残しておきます。 pythonの仮想環境を作成 cd ~/git python3 -m venv lcvenv 環境名をlcvenvにしました。 仮想環境の開始 source ~/
Ryzenの8000番台が販売されたこの時期ですがRyzen7 5700Xを購入しました。いい加減AM5に移行したいところではありますが、もう少しAM4で粘りたいと思います。 Ryzen5 5600XからRyzen7 5700Xへのアップグ
Compress-Archiveでカレントディレクトリの内容をzip形式でバックアップするスクリプト
Compress-Archiveでカレントディレクトリをバックアップするスクリプトです。 作成されるzipファイルは5世代分保存されます。 スクリプト # # カレントディレクトリをzip形式でバックアップ # # バックアップ先のルートデ
robocopyでカレントディレクトリの内容を同期するスクリプト
robocopyコマンドでディレクトリの同期するためカレントディレクトリ名をもとに保存先のパスを自動生成するスクリプトです。 スクリプト # # カレントディレクトリの複製を同期(コピー) # # 保存先のルートディレクトリ(ファイルサーバ
Ubuntu22.04DesktopでAnime2Sketchのインストール記録
Anime2Sketchをインストールしたのでその作業ログを残しておきます。 pythonの仮想環境を作成 cd ~/git python3 -m venv atosvenv 環境名をatosvenvにしました。 仮想環境の開始 sourc
Ubuntu22.04DesktopでSwinIRのインストール記録
SwinIRをインストールしたのでその作業ログを残しておきます。 pythonの仮想環境を作成 cd ~/git python3 -m venv swinirvenv 環境名をswinirvenvにしました。 仮想環境の開始 source
Ubuntu22.04DesktopでReal-ESRGANのインストール記録
Real-ESRGANをインストールしたのでその作業ログを残しておきます。 pythonの仮想環境を作成 cd ~/git python3 -m venv resrganvenv 環境名をresrganvenvにしました。 仮想環境の開始
VRAM容量確保のためWindows11の自動起動アプリを見直す。
よく使うアプリケーションのショートカットをスタートアップフォルダにコピーして、デスクトップ起動時に一緒に起動するようにしていました。 毎日決まったアプリケーションを起動するので、自動起動してくれると便利なのですが、VRAMも消費されてしまい
VRAMが空き容量の確保のためUbuntu22.04DesktopをCUIで起動する。
Stable-Diffusion-webuiをインストールしたUbuntu22.04DesktopのPCがあるのですが、他のPCのウェブブラウザで操作するのであれば、UbuntuのGUIはいらないのではないかと思いCUIで起動する方法を調べ
GIMPで画像を0から作るのであれば、線画(境界線)と塗りつぶしで別レイヤーを用意すれば、綺麗に塗りつぶすことが出来るのですが、塗り絵のような素材に着色をしようとすると、縁まで塗りつぶされなかったり、縁まで塗りつぶすと境界部分が不自然な感じ
GIMPのPython-Fuで「パスの境界線を描画」を実行する。
GIMPの機能で「パスの境界線を描画」をよく使うのでマウス操作ではなくキーボードの操作で実行するためスクリプト化を模索してみました。 #!/usr/bin/env python # coding: utf8 from gimpfu impo
Windows11が非対応なPCの中古価格は低めに設定されており、バッテリーレスのThinkPad X270を入手することにしました。 通販で購入しましたが見た目の程度はよく、同じく中古で購入し外装をほぼ交換し数年使っているX230と比べて
最近生成AIでVRAMが沢山あると嬉しい場面が増えてきたので、VRAMが少し多いRTX4070を購入してみました。 今回購入したのはZOTAC GAMING GEFORCE RTX 4070 Twin Edge OCという商品です。 ひとこ
ゆっくりMovieMaker4βのymmpファイルの動画や画像のリンク切れ確認
ゆっくりMovieMaker4のプロジェクトで動画や画像ファイルがリンク切れが起きているのでymmpファイル内で参照しているパスを表示するPowerShellスクリプトを作成しました。 # ymmpファイル内の動画や画像のリンク切れ確認 p
PowerShellでディレクトリに特定の拡張子のファイルが存在するか確認する。
具体的に画像ファイルが保存されたディレクトリか確認したい。 画像ファイルの拡張子は複数対応させたいのでGet-ChildItemのFilteオプションでは都合が悪い。 (Get-ChildItem -Path "確認するディレクト
PowerShellでディレクトリにサブディレクトリがあるか確認する。
ぱっと思いついた方法としてGet-ChildItemの要素数をカウントして0より大きいかの条件式で確認する。 (Get-ChildItem -Path "確認するディレクトリのパス" -Directory).Length
ポイント還元率に惹かれて昔作ったビックカメラSuicaカードの更新カードが届きました。 昔は電車を含めSuicaが使えるお店を良く利用していたのですが、最近は全く使わず電車にもここ数年乗っていないことに気が付きました。 久々に還元率やSui
ジムニー(JB23)はパートタイム4WDで2WDと4WDの切り替えを物理的なスイッチで行います。こちらのスイッチは夜間光るように電球が仕込まれいるのですが、こちらのランプが切れてしまいました。 調べたころ交換用部品はamazonで入手可能で
Ryzen5 5600GでROCmを使いstable-diffusion-webuiを試した話
調べたところCUDAの代わりにROCmという物があって、こちらに対応したPyTorchがあるのでそれを使えばAMDのGPUでstable-diffusion-webuiが実行することが出来るらしいです。 ただしグラフィックボードに搭載された
2024年が始まって1か月が経過したのですが、SBI証券のポートフォリオを見たところ新NISAで投資信託が積み立てされていることに気が付きました。 2024年から始まった新しいNISAは「つみたて投資枠」と「成長投資枠」の2種類があり、昨年
数値型には収められる数値の最小値や最大値がありますが、最小値を.MinValue最大値を.MaxValueで取得することが出来ます。基本的に定数ですのでプロパティを見なくとも良さそうですが、まれにプラットフォーム依存(32bit or 64
PowerShellでCSVファイルを読み込み各行の項目数をカウントする。
Excelなどを使ってCSVファイルを作ると仕様に合わないデータが出来上がることがあります。 初歩的ではありますが項目内に区切り文字であるカンマ「,」が含まれていたりすると、項目数が仕様と異なりエラーとなってしまうことがあります。 まぁ今時
Pythonでbeautifulsoupを使いスクレイピング
pythonでスクレイピングをするにあたり、beautifulsoupというライブラリを使うとHTMLを解析することが出来ます。 対象となるページごとにHTMLの構造が異なるので、目的の情報を取得するためには状況に合わせて色々なメソッドを組
pythonでWebサイトからファイルをダウンロードするライブラリはありますが、状況によっては上手くダウンロードすることが出来ない場合もあります。pythonのプログラミングで解消する場合もありますが、ここは餅屋は餅屋webページのダウンロ
タスクトレイに常駐するアプリの作成方法を調べてみました。 ソースコード ファイル名:Program.cs namespace TasktraySample; static class Program { /// <summary&gt
アプリケーションのウィンドウサイズを実行しているPCごとに自動調整するためデスクトップのサイズを取得する方法を調べてみました。 namespace screensize; public partial class Form1 : Form
ちょっといいPCのマザーボードにはCMOSクリアをするための物理スイッチが付いています。 筆者が愛用している廉価なマザーボードにはそのようなボタンはついていません。その代わりにCMOSクリア用のジャンパーのピンヘッダがありますのでそちらを金
C#よく使うフォルダをブックマークして画像ファイルをサムネイル表示するアプリ
個人的にフォルダ単位に画像ファイルを管理しているのですが、動画作成の素材としてよく使う画像フォルダにアクセスします。 その場合画像の内容が目視で確認できるようにサムネイル表示が出来ると良いです。 基本的にエクスプローラーで行っている作業です
Googleドライブに多量の画像ファイルをアップロードする。
Google Colabで機械学習するための画像ファイルを多量にGoogleドライブにアップロードすることに成りました。 お手軽にWindowsPCでエクスプローラーから見えるGoogleドライブにファイルをコピーしました。 アップロードさ
C#リストビューで画像ファイルのサムネイル表示4「サムネイルをファイルに保存」
大きなファイルのサムネイルを表示しようとすると描画まで時間がかかるので、サムネイル画像をファイルとして保存して2回目以降はそちら使うようにして高速化してみます。 プロジェクトの作成 mkdir プロジェクト名 cd プロジェクト名 dotn
Real-ESRGANの追加学習で「CUDA out of memory」が発生した話
縮小などで劣化してしまった画像を綺麗な形に拡大処理してくれるAIの一つにReal-ESRGANがあります。学習結果であるモデルを差し替えることで画像の内容にに合わせた処理を行うことが出来るのですが、このモデルを追加学習することで自分好みにカ
今年は車検の年で、毎回近くのディーラーにお願いしています。今回も車検をお願いすべく見積もりを兼ねた点検をしてきました。 1年5,000Km程度しか乗らない車ですので走行距離は大したことは無いのですが、車両を保有してから13年が経過しており、
テストデータで縦横に一定間間隔で目印がある画像データが欲しくて作成してみました。 プロジェクトの作成 mkdir プロジェクト名 cd プロジェクト名 dotnet new winforms -f net6.0 ソースコード namespa
Pythonで再帰的にディレクトリを作成os.makedirs()
ディレクトリを作成する場合os.mkdir()で作成することが出来ますが、こちらで作成できるディレクトリは1階層のみとなります 。その点os.makedirs()はディレクトリの深い階層まで一気にディレクトリを作成してくれる便利な命令です。
表示画像を移動させる機能を付与しようとしましたが、前回作成のプログラムでは自分には無理でしたので全面的に書き直しました。 前回の記事 プロジェクトの作成 mkdir プロジェクト名 cd プロジェクト名 dotnet new winform
ピクチャボックスを扱っていて思わぬところでサイズ変更イベントが発生したので、サンプルを書いて試してみました。 ピクチャボックスのサイズモードを指定 public partial class Form1 : Form { public For
PythonでOpenCVとnumpyを使って画像の分割と結合
「SwinIR」というソフトで画像を拡大しようとしたところ、私の環境ではVRAMが不足で実行できませんでした。 同梱の小さめの画像は成功するので、画像を分割して「SwinIR」を実行し、その結果を再結合すれば目的を達成できるのではと思い「画
「ブログリーダー」を活用して、84さんをフォローしませんか?
C#ではzipファイルを扱うライブラリがありますが、今回はzipファイルをバイナリデータとして読み込んんで中身をのぞいいてみようと思います。 wikipediaでZIPファイルのページを眺めていたところZIPファイルの構造の情報がありました
全てのピクセルの左右上下を検査し縁に当たる部分か調べる方法で縁取りをしてみます。 import cv2 import numpy as np def createBaseImage(): # 黒色のキャンバス(512x512)作成 img
MediaElementはWPFで動画を再生することが出来るコントロールです。 今回は動画を再生した際どのようなイベントが発生するか確認してみます。 サンプルプログラム ファイル名:MainWindow.xaml <Window x:
インターフェイスを使ったことはあっても自分で作る機会ほどんどないのですが、たまたま使わざるをえない状況になりましたので、サンプルプログラムを書いてみたいと思います。 using System.Collections.Generic; nam
「Border」の名称から罫線を引くコントロールと予想しますが、実際どのような代物なのか試してみます。 XAMLにborderをセット <Window x:Class="BorderSample.MainWindow&quo
前回にクラスライブラリとコンソールプロジェクトを使えるようにしましたが、今回はシンプルにWPFのアプリケーションを作成するプロジェクトを作成します。 WPFプロジェクトを作成しMicrosoft.Xaml.Behaviors.WpfとRea
ZipFileをUpdateモードで開いてzipファイル内のファイル(Entry)を取得Delete()メソッドで削除します。 ソースコード using System.IO.Compression; const string zipfile
WPFでINotifyPropertyChangedを使ってみたことがありました。 その後にもっと便利なReactiveProperyを知ったため、長らく忘れていました。 正直MVVMなWPFは小規模なプログラミングだと面倒を感じ、WinF
オープンソース系のソフトで動画出力部分にffmpegが使われている場合が多いのですが、最近とあるアプリケーションで動画を書き出した所、イベントログにffmpeg.exeがクラッシュした旨ログが出力されていることがありました。 .AVIでは成
SSDに保存されたファイルサイズが216MBのPNG形式画像ファイルがありまして、これをWinFormsのPictureBoxで表示するプログラムを書きます。 // パターン0 using FileStream fs = new(fileN
手作りのソフトなので計測なので精度は今一つですが、System.Drawingが一番速い結果になりました。 System.Drawing:22ms Magick.NET:39ms OpenCVSharp:33ms Windows環境で実行し
ListViewの動作が遅い原因を探ってみたところ、オーナードローでの描画にサムネイル画像の用意が間に合っていないことが原因でした。 VirtualModeで表示部分だけの描画される動作も、そもそも描画の準備が間に合っていないためスクロール
スライドスイッチみたいな見た目を想像しましたが、押しボタンタイプの見た目です。 ソースコード namespace ToolStripToggleButtonSample1; public partial class Form1 : Form
前回作成した内容で使ってみたのですが、目的が画像や動画の選択ですので、ファイルの一覧で画像の内容が目視出来たほうが良いことに気が付きました。 ついでにGIMPの.xcfやPhothoShopの.psd及び動画の.aviや.mp4などの内容も
少しずつ調べていた機能がだいぶ溜まったので、以前から作ろうと思っていたファイルマネージャ(劣化版エクスプローラー)を作成したいと思います。 アプリケーションのファイルの一覧からGIMPなどの画像加工のアプリケーションに画像ファイルをドラッグ
複数のURLを順番にダウンロードするスクリプトがあるのですが、ダウンロードするURLを配列で管理しているとエラーが発生した際、どこまで実行したか不明になってしまいます。例外処理が行われていないのが原因なのですが、問題点には目をつむってエラー
カレントディレクトリのファイルの一覧をリストビューで表示するプログラムを作成しました。 リストビューのアイテムがファイルの場合とディレクトリの場合で別のアイコンが表示されるようになっています。 namespace ListViewSampl
自分の環境ではIMEの文字変換では絵文字は出現しませんが、「Win」+「.」でフォームが表示され絵文字を選択することが出来ます。 いつからこの機能が組み込まれたのか知りませんが、自分の生活の中で絵文字を使う機会に恵まれず、最近たまたまWin
画像が保存されたディレクトリで、大き目の画像でサムネイル表示が出来ないか調べてみました。 プロジェクトの作成 mkdir プロジェクト名 cd プロジェクト名 dotnet new wpf dotnet add package Micros
GIMPのプラグインの実行時、ディレクトリを選択しスクリプトへ引数として渡すことが出来るようなので試してみました。 スクリプト #!/usr/bin/env python # coding: utf8 from gimpfu import
ファイル名がアルファベットのみの場合、中身がなんのファイルだったか忘れてしまいがちです。ファイルに対して日本語でコメントをつける方法がないか常々探しておりました。NTFSにはADS(代替ストリーム)というファイルに対してメタデータを付加する
大変リーズナブルなUSB接続のキャプチャー機器を所有しています。USBとHDMIを変換アダプタのような作りの機器でキャプチャーするときだけ機器を接続する分には問題ないですが、キャプチャーする機器を常設した状態だと映像の視聴に難があります。O
空き容量を所得するコマンドは次の通りになります。Get-PSDrive ? { $_.Free -ge 0 }結果Name Used (GB) Free (GB) Provider Root
PowerShellではInvoke-WebRequestコマンドレットを使うとWebサイトからファイルのダウンロードが出来ます。保存するファイル名の指定する必要がありますが、複数のUriを処理する場合ファイル名の指定が煩わしいので省略でき
文字コード変換の実験です。Shift_JISのテキストファイルを読み込んでUTF8の文字列としてコンソールに出力::RegisterProvider(::Instance)$utf8enc = ::UTF8$sjisenc = ::GetE
サムネイル表示する画像の縦横の比率を保持した状態で縮小します。.NET7でコンパイルが通るように修正しています。実行環境構築プロジェクトの作成mkdir プロジェクト名cd プロジェクト名dotnet new winformsソースプログラ
2023年現在1SEG放送をPCで受信できるか検証するため「DS-DT310BK」を手配しました。対応OSがWindows XP/Windows Vista/Windows 7とのことですが、Windows11で動作することを期待して試して
昔購入したポータブル液晶ディスプレイを引っ張り出して使おう思い試した所、HDMIケーブルが認識しませんでした。この液晶ディスプレイはUSBポートから給電出来るタイプで比較的初期の代物だったと思いますので、結構古いです。長らく貸し出しており、
リクルートポイントが20000ポイントほどたまりました。前回はたまったポイントをPontaポイントに交換してオーブントースターを購入しました。それが2年前ですので、1年で約10000ポイントほどたまった計算になります。20000ポイントもあ
プラスチック製のキートップの引き抜き工具を使っていて、無理な力をかけて破壊してしましました。メンブレンのキートップを外す作業は専用工具が無くとも出来たりもしますが、無理をして今度はキーボード側を壊すリスクを考えて、「キートップ引き抜き工具」
以前にyt-dlp.exeで動画を連続ダウンロードするスクリプトを作りましたが、もっとシンプルにクリップボード経由でコマンドを連続する実行する方法がありますので紹介します。まずダウンロードしたい動画のURLをクリップボードにコピー。複数ある
Google Oneに加入するとVPNが使えるようなのでスマートフォンから試してみました。「Google One」のアプリを起動→「VPN」をタップ→「VPNを有効にする」をタップipinfo.ioで接続状況を確認してみます。VPN無効の状
ざっくりした使ったお金を帳簿に付けることで使い過ぎを戒めることが目的です。入力する項目は日付、金額、備考だけにしています。フォームで入力した内容はスプレッドシートに入力されるので、簡単な計算式で月合計などを集計することが出来ます。基本的に支
シンプルに文字を入力をするダイアログになります。<#.SYNOPSIS文字を入力するダイアログのサンプル#>using namespace System.Windows.Formsusing namespace System.D
文字ベースのWebサイトを閲覧する場合テキストベースのWebブラウザが便利です。テキストベースのWebブラウザというとCLIで動くものが主流?ですが、「HTML3」はGUIベースで、見た目がWindowsのメモ帳そっくりな点が特徴です。第三
業務用途で利用するPCは毎日同じサイトを開く場合が多いと思います。そのような場合ブラウザの設定で起動時に開くサイトを指定する方法があります。これで問題が解決してくれればよいですが、ブラウザに設定してしまうと、同じアカウントで利用している別の
PowerShellからmemコマンドでメモリの容量を表示させたい。Get-WmiObject Win32_OperatingSystemで取得できるオブジェクトのTotalVisibleMemorySizeでトータルのメモリ容量、Free
使い過ぎてマウスのソールが4つの内3つほど無くなっているマウスが手元にあります。このぐらいになると、だれが使ってもマウスの動作がおかしいと感じるはずですが、よくこれまで現役で使っていたなと感心してしまいます。そもそも高級なマウスでは無いので
「Redmi Note 11」というスマートフォンを利用しています。格安SIMフリースマートフォンのわりにサクサク動くので大変気に入っているのですが、一つ問題があります。このスマートフォンWiFiが使えません。過去記事を見ると2022年5月
.NET7のconsoleでビルドできるように手直ししました。また、エクスプローラーの送るから実行することを想定して複数の画像ファイルの対応と同名ファイルで上書きする仕様に変更しています。実行環境構築プロジェクトの作成mkdir プロジェク