Ticket #33455

mrcMeanYlinePos

Open Date: 2014-03-10 15:28 Last Update: 2014-03-25 07:10

Reporter:
Owner:
Type:
Status:
Closed
Component:
(None)
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
None
Vote
Score: 0
No votes
0.0% (0/0)
0.0% (0/0)

Details

ファイル名: /src/Tools/mrcImage/mrcMeanYlinePos/src/mrcMeanYlinePos.c
関数名: llmrcLineMean

【問題内容】
	-w (第3引数 width)の値が使用されていません
	
【ソースコード(一部)】
	(91行目付近)
	yStart = 0;
	yEnd = (in1->HeaderN.y);
	
	for (y=yStart; y<=yEnd ; y++) {
		mrcPixelDataGet(in1,xLine,y,z,&data,mrcPixelRePart,mrcPixelHowNearest);
		meanBright += data;
	}

【補足】
	(1) ドキュメントに記載する場合は-w を未実装とします

	(2) コードを修正する場合は91行目付近を以下のように考えております。
	yStart = 0;
	if((0<=width) && (width<=in1->HeaderN.y)) {
		yEnd = width;
	}
	else {
		yEnd = (in1->HeaderN.y);
	}
	
	for (y=yStart; y<=yEnd ; y++) {
		mrcPixelDataGet(in1,xLine,y,z,&data,mrcPixelRePart,mrcPixelHowNearest);
		meanBright += data;
	}

Ticket History (2/2 Histories)

2014-03-10 15:28 Updated by: kinoshita-eos
  • New Ticket "mrcMeanYlinePos" created
2014-03-25 07:10 Updated by: tacyas
Comment

ご指摘の部分、下記の様に修正しています。デフォールト値を−1に変更して、Optionalとしました。 これにより、通常はwidthが負、widthが元々の画像より小さい場合に、中心付近の値をとるように変更しています。

89 if(width < 0 || in1->HeaderN.y < width) { 90 yStart = 0; 91 yEnd = (in1->HeaderN.y); 92 } else { 93 centre = in1->HeaderN.y/2 94 yStart = centre - width/2; 95 yEnd = yStart + width - 1; 96 }

また、出力を-oにより、通常はstdout, ファイル名を指定すれば、ファイルに出力できるように変更しています。

Attachment File List

No attachments

Edit

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Login