画像を指定したサイズにトリミング
조회 수: 48 (최근 30일)
이전 댓글 표시
I = imread("a.jpg");
h1 = drawrectangle('Position',[988,0.500000000000171,3999,3999]);
roi1 = h1.Position;
imgtriming= imcrop(img,roi1);
figure;imshow(imgtriming,"Border","tight");
print(指定したフォルダ)
指定したサイズにトリミングした画像をフォルダ内に保存したいです。 [ファイル] メニューの [名前を付けて保存] ダイアログ ボックスで得られる結果と同様のものをプログラムによって作りたいと考えています。
現状↓
上記のコードを使って指定した範囲内を4000×4000にトリミングします。その後printによって作製した画像をフォルダ内に保存します。
しかし,printで保存した場合余計な余白ができてしまいました。この問題を解決するためにimshowのオプションBorder","tight"で余白を消しましたが、今度は4000×4000のサイズの画像が拡大されて余白を含めた7000×7000のサイズの画像が作製されてしまいした。
この問題を解決したいです。ご教授よろしくお願いいたします。
댓글 수: 0
채택된 답변
Atsushi Ueno
2023년 6월 5일
I = imread("a.jpg"); imshow(I); % imshowを追加
h1 = drawrectangle('Position',[988,0.500000000000171,3999,3999]);
roi1 = h1.Position;
imgtriming= imcrop(img,roi1);
figure;imshow(imgtriming,"Border","tight");
[file,path] = uiputfile % [名前を付けて保存] ダイアログ ボックスと同様
imwrite(imgtriming,[path filesep file]); % print(指定したフォルダ)
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 イメージ算術에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!