Lógica de processamento de pixels correta para DICOM JPEG (RGB) para aplicação da largura da janela e filtro de nível

Eu estou tentando aplicar widow largura e filtro de nível para imagem JPEG que extraí do arquivo DICOM.

Aqui está a lógica que eu uso para processar cada canal de imagem RGB frente exemplo manipular Red Channel Como abaixo código em Render-Script no android

Exemplo de código onde mostrei como manipulo o Red Channel of Image. (Eu faço mesmo para canais verdes e azuis)

Ele manipula o JPEG Widow Width e Level, mas não tem certeza se a sua maneira correta de manipular DICOM JPEGS se algum corpo sabe maneira correta de manipular RGB JPEGS Largura da janela e nível com o processamento de pixels correto matemática por favor me ajude como resultado (20) %) difere dos DicomViewers baseados em Windows (eu sei que o nível da janela e a largura são apenas para imagens monocromáticas, mas alguns visualizadores DicomViewers, como "ShowCase", aplicam esses filtros em RGB)

    displayMin = (windowLevel- windowWidth/2);
    displayMax = (windowLevel+ windowWidth/2);

    /*Manipulate Red Channel */
    if(current.r < displayMin)
    {
      current.r = 0;
    }
    else if(current.r > displayMax)
    {
       current.r = 1;
    } 

questionAnswers(1)

yourAnswerToTheQuestion