3DCG屋さんの活動記録

PROFILE ★★こんな人です

3DCGを活用した映像や没入体験コンテンツの制作をしています。テクノロジーの社会実装に興味があり。テクニカルディレクター。面白いこと新しいことにワクワクする気持ちに『素直』でいつづける。

ラベル cmd の投稿を表示しています。 すべての投稿を表示
ラベル cmd の投稿を表示しています。 すべての投稿を表示

2022年2月17日木曜日

資料画像集め Google画像検索を一括ダウンロード (Python)


Googleで検索ヒットした画像を一括ダウンロードしたい!!



手順

・インストール

pip install google_images_download


以上!


コマンドラインから実行(windowsボタン押して コマンドプロンプト)

googleimagesdownload --keywords "リンゴ"


※注意 カレントディレクトリに保存される



ここでエラー

フォルダは作成されるが、ファイルがDLされない。

Unfortunately all 10 could not be downloaded because some images were not downloadable. 0 is all we got for this search filter!


以下参考にして解決。

https://qiita.com/GeekMasahiro/items/8c5b6df476ce91adc698


改めてコマンド実行 →ダウンロードできた!!!


デフォルトだと100個までしかダウンロードできない。

ので、chromedriver.exeつかってリミット外す。

(参考サイト参照)


できた♥




Sample

googleimagesdownload  --keywords "検索文字列" -l 1000 -o "保存フォルダパス" --chromedriver "C:\Program Files (x86)\Google\Chrome\chromedriver.exe"



参考サイト

https://qiita.com/tomokin966/items/fdf14f4bfaa8bf97eed6

(オプションについて情報あり↑

https://pystyle.info/download-images-from-google-with-google-images-download/

https://qiita.com/Ikko_Kojima/items/4d943c60ff5e886a0544


----------------------------------

さらにさらに

batバッチファイルにすれば、複数の検索処理をワンクリックでできるので便利!

ただし、キーワードに日本語を使うときは、エンコードをANSIにしないと文字バケする。







一緒にやったこと

・VisualStudioCode install

https://code.visualstudio.com/docs/?dv=win



・Git for windows install

https://qiita.com/taiponrock/items/632c117220e57d555099



ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー


ちなみにChromedriver.exe は以下に入れました。


C:\Program Files (x86)\Google\Chrome

2020年6月9日火曜日

複数のMayaファイルをドラッグアンドドロップするだけで、バッチレンダー用Batを作成するPythonツール


この記事は、より新しい記事で内容が更新されています。(2020.6.13)
-------------------------------------------------------------------------


Pythonツール。
ファイルをドラッグして、リストに追加。

ほぼできた!





<開発メモ>

Qt DesignerでGUI作成。
Python(Pyside2)で内部作成。


・QListWidgetに
Item追加
Item削除
ドラッグアンドドロップで順番入れ替え

・QActionで
ボタン押したらアセットのPrefix追加

・ボタン押したらテキスト(バッチ)ファイル作成
ファイルが既存ならメッセージボックス表示

・用途は
複数のMayaファイルをバッチレンダーしたいとき
batファイルを書くのが億劫だったので作成。


今後は、NukeやUE4のバッチ処理にも応用したい。


実行ファイルにして(exeにして)今後アップ予定。


ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
参考サイト

2020年4月15日水曜日

UnrealEngine4のシーケンサーをコマンドラインでレンダリング


UE4のシーケンサー(Sequencer)をCommandlineからレンダリングする。


シーケンサーが複数ある、
書き出しフォルダ・ファイルの命名規則
がバラバラでヒューマンエラーやコストが高くなってきたので
コマンドラインで自動化!!!


参考サイト
https://docs.unrealengine.com/ja/Engine/Sequencer/Workflow/RenderingCmdLine/index.html



できた★

基本的にMayaのコマンドラインレンダーと同じ。

ちょっとエラーがあったので、備忘録。
以下。

---------------------------------------------
コマンドラインレンダ
エラー


<2020.4.15>
■bat実行しても、コンソール以外何も表示されない
→UE4Editor.exeのパスを正しく入力する
→プロジェクトのパスを正しく入力する
→Mapのパスを正しく入力する(GameがContentフォルダになります)


■UE4が起動されてMapが表示されるが、画像が保存されない
→レベルシーケンスのパスを正しく入力する


■解像度が反映しない
→ -windowed の引数を追加(参考サイト2
→ カメラのアスペクト比固定のチェックオフ

以上。

-------------------------------------------------
おまけで
bat中身



"C:\Program Files\Epic Games\UE_4.24\Engine\Binaries\Win64\UE4Editor.exe"
"<プロジェクトのフルパス ~.uproject>"
/Game/(マップのパス)
-windowed
-game
-MovieSceneCaptureType="/Script/MovieSceneCapture.AutomatedLevelSequenceCapture"
-LevelSequence="/Game/(レベルシーケンスのパス)"
-NoLoadingScreen
-resx=240
-resy=120
-forceres
-MovieFrameRate=30
-NoTextureStreaming
-MovieFolder="<保存先フォルダのフルパス>"
-MovieFormat=BMP
-MovieQuality=100
-MovieName="<ファイル名>"
-MovieCinematicMode=yes
-MovieWarmUpFrames=10
-MovieStartFrame=360
-MovieEndFrame=400
-NoScreenMessages




2020年4月13日月曜日

PythonファイルをEXEに変換(ドラッグアンドドロップしたファイルのパスを取得するため)


ドラッグアンドドロップしたファイルのパスを取得したい


.pyのファイルだとうまくいかない・・・


.pyを.exeに変換するといけるらしい!


Pyinstallerをつかうといいらしい
https://techacademy.jp/magazine/18963


pipからPyinstallerをインストール
https://qiita.com/huushihi/items/c7f578bf51c0017c9076



って、できた!

よしよし。


ちなみに、cmdのコンソールに
PythonでいうPrintは


sys.stderr.write("comment\n")

\nを最後につけないと表示されない



以上

--------------------------------------

<2020.4.24 補足>

■手順まとめ
①Python3.7をインストール (3.8はだめ?)
②pyinstallerを cmd の pip でPCにインストール
③コマンドプロンプトで以下実行

pyinstaller pythonファイル名 --onefile

④新規作成されたdistフォルダ内にexeファイルできている!


ここで注意!
③はpythonファイルがある場所にcdで移動してから!
フルパスだとエラーでexeファイルが作成されない


と思ったんですが、、、そうでもないらしい。
ちょっとよくわからないです。

とりあえず、毎回コマンドプロんプロ開いてっていうのも手間なので
PythonファイルをドラッグアンドドロップしたらEXE変換するbat作りました。
同じ階層にdistフォルダが作成されます。

BAT(バッチファイル)はこちらからダウンロードできます


以上です。

2019年4月9日火曜日

batチャレンジ! フォルダ内のファイル名から、文字列変換テキスト作成


ファイルをドラッグ&ドロップしたらリスト取得、のbatはよくあるんですが・・・

「フォルダ(ディレクトリ)」をドラッグ&ドロップして、求める結果が得られなかったので、今回自分が調べた内容を記録に残します。



<目的>
フォルダをドラッグ&ドロップ(以降D&D)して、そのフォルダ内のファイルをリストにしてテキストファイルに書き出す。


調べてすぐ出てくるのは、D&Dしたフォルダ・ファイルのカレントディレクトリのリストが取得されるっていうこと。
中身(下位層)のリストが取得できない!

シンプルなこういうの



・・・


で作ったのがこれ。

使い方は、
以下コマンドをbatにして保存。
フォルダをD&Dすると、batと同じフォルダにtxtファイルが保存されます。


@echo off
rem フォルダをbatにD&Dしてフォルダ内のリスト取得
rem コマンドプロンプトに表示
rem forfiles /p  %~p1 /c "cmd /c echo @fname @ext"
rem テキストファイルに書き出し(batのある場所にtmp.txt一時作成)
forfiles /p  %1 /c "cmd /c echo @fname@ext>> %~p0\tmp0.txt"
setlocal enabledelayedexpansion
for /f "delims=" %%a in (%~p0\tmp0.txt) do (
  set line0=%%a
  set line1=!line0:""=.!
  set line1=!line1:"=!
  echo !line1!>>%~p0\tmp1.txt
)
rem type %~p0\tmp0.txt > %~p0\rawlist_%~n1.txt
type %~p0\tmp1.txt > %~p0\FILELIST01_%~n1.txt
del %~p0\tmp0.txt
del %~p0\tmp1.txt
endlocal


---------------
以上。

D&Dするフォルダと同じドライブにbatを保存して使用してください!




<参考サイト>



--------------------------------------------
ちなみに、かなり特殊だけどカスタマイズしたのがこちら。
【テキスト1】ファイル名(拡張子なし)取得して、前後に文字列挿入&連番
【テキスト1】ファイルのフルパス名取得して、前後に文字列挿入&連番