encoderspec.cpp

来自「jpeg 2000 压缩算法源代码 核心ebcot」· C++ 代码 · 共 55 行

CPP
55
字号
BlkWTData->SetOffset(nOffset);


			int *pnData=(int *)pBlkWTData->GetData();

			DeQuantizing(pnData,pdwQuanData,nWidth,nHeight,nMb,fBStep);
			QuanBlkWTData.SetData(pBlkWTData);


		}
		break;
	case TYPE_FLOAT:
		{
            CDataBlk *pBlkWTData=new CDataBlkFloat(nWidth,nHeight);
           	pBlkWTData->SetBlkOrg(coordBlkOrg);
        	pBlkWTData->SetBlkWidthHeight(nWidth,nHeight);
	        pBlkWTData->SetOffset(nOffset);

			double *pfData=(double *)pBlkWTData->GetData();
			DeQuantizing(pfData,pdwQuanData,nWidth,nHeight,nMb,fBStep);
			QuanBlkWTData.SetData(pBlkWTData);



		}
		break;
	default:
		{
			return;
		}
	}


}

void CDeQuantizer::DeQuantizing(int *pnData, DWORD *pdwData, int nWidth, int nHeight, int nMb, double fBStep)
{

	DWORD temp1=1<<(INTBITS-1);
	DWORD temp2,temp3;
	
	temp3=(1<<nMb)-1;

	int signbit;

	double fabsBlkvalue;
	int i,j;

	for (i=0;i<nHeight;i++)
		for (j=0;j<nWidth;j++)
		{

			temp2=(pdwData[i*nWidth+j])&temp1;

			signbit=temp2>>(INTBI

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?