Shadows/Highlights - High radius causes vertical lines, Issue 1921
This commit is contained in:
@@ -332,10 +332,12 @@ template<class T> void gaussHorizontalSse (T** src, T** dst, int W, int H, float
|
|||||||
|
|
||||||
template<class T> void gaussHorizontal (T** src, T** dst, AlignedBufferMP<double> &buffer, int W, int H, double sigma) {
|
template<class T> void gaussHorizontal (T** src, T** dst, AlignedBufferMP<double> &buffer, int W, int H, double sigma) {
|
||||||
|
|
||||||
#ifdef __SSE__
|
#ifdef __SSE__
|
||||||
gaussHorizontalSse<T> (src, dst, W, H, sigma);
|
if(sigma < 70) { // bigger sigma only with double precision
|
||||||
return;
|
gaussHorizontalSse<T> (src, dst, W, H, sigma);
|
||||||
#else
|
return;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
if (sigma<0.25) {
|
if (sigma<0.25) {
|
||||||
// dont perform filtering
|
// dont perform filtering
|
||||||
if (src!=dst)
|
if (src!=dst)
|
||||||
@@ -411,7 +413,6 @@ template<class T> void gaussHorizontal (T** src, T** dst, AlignedBufferMP<double
|
|||||||
|
|
||||||
buffer.release(pBuf);
|
buffer.release(pBuf);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef __SSE__
|
#ifdef __SSE__
|
||||||
@@ -561,10 +562,12 @@ template<class T> void gaussVerticalSse (T** src, T** dst, int W, int H, float s
|
|||||||
|
|
||||||
template<class T> void gaussVertical (T** src, T** dst, AlignedBufferMP<double> &buffer, int W, int H, double sigma) {
|
template<class T> void gaussVertical (T** src, T** dst, AlignedBufferMP<double> &buffer, int W, int H, double sigma) {
|
||||||
|
|
||||||
#ifdef __SSE__
|
#ifdef __SSE__
|
||||||
gaussVerticalSse<T> (src, dst, W, H, sigma);
|
if(sigma < 70) { // bigger sigma only with double precision
|
||||||
return;
|
gaussVerticalSse<T> (src, dst, W, H, sigma);
|
||||||
#else
|
return;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (sigma<0.25) {
|
if (sigma<0.25) {
|
||||||
// dont perform filtering
|
// dont perform filtering
|
||||||
@@ -642,7 +645,6 @@ template<class T> void gaussVertical (T** src, T** dst, AlignedBufferMP<double>
|
|||||||
|
|
||||||
buffer.release(pBuf);
|
buffer.release(pBuf);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user