きおくの森

ただの記録

LabelImgの導入方法【アノテーションツール】

  1. はじめに

    Labelimg(アノテーションツール)の導入方法について記録する。

  2. 導入環境

    Windows 10
    Python3.9

  3. 導入方法

    1. LabelimgをGitからダウンロードする。

      当方環境はGitは未導入なので、「CODE」から「Download ZIP」を選びzipファイルでダウンロードしました。

      GitHub - heartexlabs/labelImg: 🖍️ LabelImg is a graphical image annotation tool and label object bounding boxes in images

    2. 任意のディレクトリにzipを展開する。

    3. 必要なパッケージをインストールする。

      requirementsフォルダにあるrequirements-linux-python3.txtに必要なパッケージが記載されているので、インストールする。

    4. resource.pyを作成する。

      labelimg.pyと同じ階層で下記コマンドを実行する。

        pyrcc5 -o libs/resources.py resources.qrc

  4. Labelimg起動

    pythonコマンドの引数にlabelimg.pyファイルを指定してコマンド実行する

      py labelimg.py 

 

IS NOT NULL演算子をIN句に含めたいときの代替手段【SQL】

  • 課題
    WHERE句に同じカラムの条件を複数指定したいから、IN句を使用したい。
    しかし、IS NOT NULL演算子が条件に含まれていて、IN句が使えなくて困る。
    例( WHERE COL1 = '1234' AND COL1 IS NOT NULL )

  • 解決策
    IS NOT NULLの対象にしたいカラムを等号の左辺と右辺に指定する。
    つまり、課題の例であれば、下記の形にすることで解決できる。

    WHERE COL1 IN ('1234', COL1)

    ⇒ NULLは比較演算子で抽出できず、結果的にNULLを除外することになる。そのため、課題の例と同じ結果が返ってくる。
    逆に言えば、NULLを抽出するにはIS NULL演算子を使用しなければならない。

  • 副次的なメリット
    ✓IS NOT NULL演算子を使わないからパフォーマンスが向上する!
     ※B-Treeインデックス使用時に限る。
    ✓IN句でまとめることによりオプティマイザの評価によるコストが低減できる!

  • 参考サイト

    1)IS NOT NULLの回避方法: その時々

    2)【SQL】IN句まとめ(複数条件や否定)~where in~|sampling2x

「お手軽ログ監視」PowerShellスクリプトを作ってみた

  1. どんなの?
    コンテキストメニューの「送る」から「 tail -f 」風のログ監視が開始できる!

  2. ログ監視スクリプト作成
    任意の場所に「Get-Content -Wait -Path $Args[0]」を記載したps1ファイルを作成する。

    f:id:colorcolorcomic:20220217001258p:plain
    ※当方は「C:\script\tail.ps1」を作成しました。

  3. SendToフォルダを開く
    エクスプローラーのアドレスバーに「shell:sendtoを入力して「SendTo」フォルダを開く。

    f:id:colorcolorcomic:20220217001855p:plain

  4. SendToにログ監視スクリプトのショートカットを配置
    コンテキストメニューを開き、「新規作成」から「ショートカット」を選択する。

    f:id:colorcolorcomic:20220217002200p:plain

  5. ショートカットの作成
    5.1
    「項目の場所を入力してください」の欄は下記を入力して、次へ。
    「C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -Command "C:\script\tail.ps1"」
    赤字の箇所はログ監視スクリプトのパスを指定する。

    f:id:colorcolorcomic:20220217002448p:plain

    5.2
    「このショートカットの名前を入力してください」の欄は任意の名前を入力して完了をクリック。

    f:id:colorcolorcomic:20220217002626p:plain

     

  6. 動作確認
    6.1
    監視したいログファイルを右クリックして、「送る」から作成したショートカット「tail」を選択する。

    f:id:colorcolorcomic:20220217003007p:plain


    6.2
    PowerShellが立ち上がり、ログファイルの内容が表示される。
    そして、待ち受け状態になっている。

    f:id:colorcolorcomic:20220217003225p:plain

    以上

    スクリプトを終了するには、「Ctrl+C」か「ウィンドウを閉じる」で終了する。

基本情報技術者試験に合格した

11/30の正午に基本情報技術者試験の合格発表がありました。

 

結果は合格でした。

 

試験対策は、過去問道場のみ取り組みました。

 

www.fe-siken.com

G検定に合格した

f:id:colorcolorcomic:20211120212851p:plain

11月6日に「2021年第3回G検定」を受験して合格しました。

 

使用した教材は下記の3点です。

    1. これ1冊で最短合格 ディープラーニングG検定ジェネラリスト 要点整理テキスト&問題集
    2. 深層学習教科書 ディープラーニング G検定(ジェネラリスト)公式テキスト
    3. 徹底攻略ディープラーニングG検定ジェネラリスト問題集

 

勉強方法は「参考書を読む→該当箇所の問題を解く→間違えた個所は復習する」の反復です。

 

試験のレベルはネットの口コミ通り、構えるほど難しくはないです。

ただ、全く知識がない状態での受験の場合は、最低でも問題集1冊はクリアしないと、合格するのは難しいと思います。