円ROIの面にストライプを表示したい
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
drawcircleで円ROIを描画しています。StripeColorでエッジ部分をストライプにできることは確認しているのですが,面部分にストライプを表示することは可能でしょうか?
1 commentaire
Atsushi Ueno
le 29 Sep 2021
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')
Réponse acceptée
Kenta
le 3 Oct 2021
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 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur ROI ベース処理 dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!