円ROIの面にストライプを表示したい
조회 수: 5 (최근 30일)
이전 댓글 표시
drawcircleで円ROIを描画しています。StripeColorでエッジ部分をストライプにできることは確認しているのですが,面部分にストライプを表示することは可能でしょうか?
댓글 수: 1
Atsushi Ueno
2021년 9월 29일
drawcircleで描画した円ROI(Circleオブジェクト)にその様な機能はありません(現時点では)
>面部分にストライプを表示することは可能でしょうか?
不可能ではありませんが、自分で開発する必要があります。円ROIの対話的操作に連動しなければならないのでしょうから、images.roi.Circleを継承し、面の描画メソッドにストライプ描画機能を追加しなければなりません。関係するソースが全て開示されていなければ、開発は難しいでしょう。
I = imread('baby.jpg'); figure; imshow(I); % cute baby
h = images.roi.Circle(gca,'Center',[1000 1000],'Radius',500,'StripeColor','g');
matlab.graphics.internal.getForDisplay('h',h,'images.roi.Circle')
채택된 답변
Kenta
2021년 10월 3일
clear;clc;close all
I = imread('baby.jpg'); figure; imshow(I);
slashed=imread('slashC.png');
slashedSmall=imresize(slashed,[800 800]);
slashedSmall=repmat(slashedSmall,[1 1 3]);
roi = drawpoint;
x=round(roi.Position(1));
y=round(roi.Position(2));
[h,w]=size(slashedSmall,1:2);
I(x:x+h-1,y:y+w-1,:)=I(x:x+h-1,y:y+w-1,:)-slashedSmall;
figure;imshow(I)
こんにちは、@Atsushi Ueno さまのおっしゃるとおり、用意された関数でそれをクリックした場所に埋め込むのは難しいのかもしれませんね。そういうfile exchangeのコードもあるかもしれませんが。
例えばslashの入った画像を用意しておき、無理やり画像に重ね合わせるとそれっぽくなりました。
全く作りこめてないのでこれでは問題が多くありますが気にいっていただければここから改良してそれ用の関数を自作するのも良いかもしれません。
댓글 수: 0
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 ROI ベース処理에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!