text:
- Fours
- Sixes
- Wickets
- Salman Butt 24
- Mohammad Hafeez 4
- SC Ganguly 32
- DJ Hussey 11
- DB Das 31
- LR Shukla 15
- WP Saha 11*
- AB Agarkar 5
- Umar Gul 7
- I Sharma 2*
- Sohail Tanvir 3/26
- MM Patel 2/22
- SR Watson 0/36
- SK Trivedi 1/26
- SK Warne 0/21
- YK Pathan 1/14
Toss: Shane Warne has won the toss and decided to bowl. There's so much noise in Eden that Warne needed to shout out "heads" so that everyone hears. Sourav Ganguly says he would have bowled as well. There is some rain around so D/L could come in later. Maybe one of the reasons for bowling first.
Teams: Rajasthan are playing four seamers for this one - Watson, Tanvir, Munaf Patel and Siddharth Trivedi. They go in unchanged from the previous match.
Umar Gul in for the injured Shoaib Akhtar. That's the only change for Kolkata. Salman Butt is slated to open with Mohammad Hafeez. There's bound to be a bit of needle here, especially after the Warne-Ganguly face off after the previous game in Jaipur. Strangely Ganguly was in time for the toss here. Something fishy. Hmm. This is also a battle of the coaches - Buchanan v Warne. This is what Warne had to say after the previous game - 'They need to do some work on their game, maybe get back to their laptops". Never misses a chance, the master.
Hello and welcome to Cricinfo's 44th match of the IPL. This is Siddhartha Vaidyanathan and joining me in scoring is Raju.
It's pretty much do or die for Kolkata Knight Riders at Eden Gardens. They're up against the strongest team in the competition, Rajasthan Royals, and a loss here would make it very hard to reach the last four. They've had an erratic campaign and need to buck up here to get a shot in the semi-finals.
Check out the preview here. "They'll need to win all three remaining games but even that won't assure them a top-four slot. Alternatively, a loss will diminish their chances but they could still make the cut with 14 points, if other results go their way."
Rajasthan, on the other hand, are almost through and win here would seal their spot for sure. They could even end up on the top of the table, a tremendous fillip for a side that was written off at the start of the tournament.
Also vote for your favourite cricket commentator on TV in the Cricinfo Readers' Poll
Sohail Tanvir to Salman Butt, 2 wides, down the leg side, starts with a wide, it's Pakistan v Pakistan first up, two slips in place and there seems to be a bit of swing around
Sohail Tanvir to Mohammad Hafeez, FOUR, on the pads, launched into the leg side, that's in the air but Trivedi, coming around from fine leg, can't get to it, the outfield seems slippery and he lets it go for a boundary
Sohail Tanvir to Mohammad Hafeez, no run, on the pads again, he's over the wicket and straying too much, tucked away towards short midwicket
Sohail Tanvir to Mohammad Hafeez, no run, fine ball there, angled across the right-hander, he looks for a loose drive but is beaten all ends up, that had him napping
Sohail Tanvir to Mohammad Hafeez, 1 leg bye, on the pads again, tries to turn it but is struck on the pads, deflected away for a leg bye
Sohail Tanvir to Salman Butt, no run, on middle and leg again, he hasn't got the line going here, turned away but they decide against the single
Sohail Tanvir to Salman Butt, no run, good one to end the over, full and on off, making him search for that, turned to the leg side but straight to the fielder, that's the right length to hit
End of over 1 (7 runs) Kolkata Knight Riders 7/0 (RR: 7.00)
- Salman Butt 0 (2b)
- Mohammad Hafeez 4 (4b 1x4)
- Sohail Tanvir 1-0-6-0
Munaf Patel to share the new ball, one slip in place
Patel to Mohammad Hafeez, no run, appeal straight away, angling in from off to leg, rapped on the pads but that was sliding down leg, they think of a quick run but decide against it
Patel to Mohammad Hafeez, no run, dropped, Hafeez walks down the track and slaps a short one back to Munaf but he didn't seem to expect it and was slow to get his hands around it, strikes him on the shoulder and has the bowler gasping
Patel to Mohammad Hafeez, no run, short of a length again, cramps him for room, tapped to the off side, three dots in a row
Patel to Mohammad Hafeez, OUT, he's got his man this time, good-length ball that was moving slightly away, Hafeez felt it was in the slot and tried to loft it over the infield but he's not got the timing right, that hits the inside half of the bat and pops straight to Asnodkar at mid-on. He appeared to be sent in to go after the bowling but has to go now.
Mohammad Hafeez c Asnodkar b Patel 4 (8b 1x4 0x6) SR: 50.00
The prince is in. Ganguly is his name. Eden goes ballistic
Patel to Ganguly, no run, short of a length, cramped for room, outside off and jabbed to point, five dots in row
Samir has an observation: "If 5 foreign players are allowed from next IPL, it would the best for the competition. In most of the teams the 6th local player is not able to perform at all."
Patel to Ganguly, no run, fine over this, wicket maiden that, tapped to the off side, super stuff from Munaf
End of over 2 (wicket maiden) Kolkata Knight Riders 7/1 (RR: 3.50)
- SC Ganguly 0 (2b)
- Salman Butt 0 (2b)
- MM Patel 1-1-0-1
- Sohail Tanvir 1-0-6-0
Shane Watson comes in now to replace Tanvir. One slip in place
Watson to Salman Butt, no run, full and outside off, driven hard but straight to cover, that was in the slot but Butt can't get it away
Watson to Salman Butt, FOUR, short and wide, slapped away superbly past point, he times it really well, the modern Saeed Anwar they call him, Watson not getting his line right yet
extra-cover in, backward point and cover deeper, inside-out field from Warne
Watson to Salman Butt, no run, straighter this time, short of a length, tries to cut but can't get the timing, trickles to cover
Watson to Salman Butt, 1 wide, drifting down the leg side now, that's wide in this format, Butt tries to flick but can't make contact
Watson to Salman Butt, no run, straight and on the money here, short of a length, the kind you want from your premier bowler, defended watchfully to mid-off
Watson to Salman Butt, no run, tapped to cover
"Given the history of Warne and Smith, I wonder how they are handling their differences," says Harsh. Here's an excerpt from what Warne said in a piece in the Sydney Morning Herald dated March 13, 2006: "At the end of the day, it was the worst South African team to ever tour Australia. They didn't make the finals of the one-dayers. They lost [the Test series] 2-0, and they probably should have lost 3-0. Smith didn't make a 50. He just keeps making these outrageous and ridiculous statements and doesn't back it up."
Watson to Salman Butt, no run, similar ball again, driven straight to mid-off again, tight over this, just five off it
End of over 3 (5 runs) Kolkata Knight Riders 12/1 (RR: 4.00)
- Salman Butt 4 (8b 1x4)
- SC Ganguly 0 (2b)
- SR Watson 1-0-5-0
- MM Patel 1-1-0-1
Tanvir comes in from the pavilion end
Sohail Tanvir to Ganguly, no run, good line this, doesn't allow him a chance to free his arms, tapped to cover
Sohail Tanvir to Ganguly, no run, jags back into the left hander, surprises him and he has no stroke for that, they think of a quick run but decide against it
Sohail Tanvir to Ganguly, no run, back of a length this time, no chance for Ganguly to get that away, he's on the money here alright, good change of ends here
Sohail Tanvir to Ganguly, no run, superb slower ball here, surprises Ganguly and he can only push it tentatively to cover, the crowd are getting into this now, boos go around
Sohail Tanvir to Ganguly, 1 run, shorter one this time, Ganguly isn't quick enough onto it but manages a tame pull to fine leg, loops up but short of the fielder, just one
Nandu writes in from Atlanta. "Let us have 5 foreign player per team and let IPL bring back Super-Sub. Super sub should be allowed to be named after the toss. That way 7 domestic players per team can be maintained."
Sohail Tanvir to Salman Butt, 1 run, down the leg side, worked away to fine leg for another single, tight stuff from Rajasthan, Eden getting restless
End of over 4 (2 runs) Kolkata Knight Riders 14/1 (RR: 3.50)
- Salman Butt 5 (9b 1x4)
- SC Ganguly 1 (7b)
- Sohail Tanvir 2-0-8-0
- SR Watson 1-0-5-0
Munaf from the other end now. Warne juggling this around.
Patel to Salman Butt, no run, full and on off, good pace there, driven back to the bowler
Patel to Salman Butt, FOUR, he's taken a little step in front and slapped that hard through the covers, on the up and that's class, he finds the placement and gets Eden to its feet, they need a move on here
Patel to Salman Butt, FOUR, little walk down the track again, Munaf sees him coming and hits it short and wide but Butt out-thinks him, nudges it past the first slip for four, he knew exactly what he was doing there, fine shot
Patel to Salman Butt, 1 run, short of a length, on middle and leg, tapped away to fine leg, sensible
Patel to Ganguly, no run, signs of frustration here, Ganguly backs off and tries to whack that over mid-on but can't get the timing right, dribbled to mid-on
Patel to Ganguly, 1 run, walks down the track again, Ganguly doesn't have much of a clue but is trying to clear the field, thick inside edge goes to square leg, even Dada is smiling by the end of it
End of over 5 (10 runs) Kolkata Knight Riders 24/1 (RR: 4.80)
- SC Ganguly 2 (9b)
- Salman Butt 14 (13b 3x4)
- MM Patel 2-1-10-1
- Sohail Tanvir 2-0-8-0
Warne is toying around now. Watson is back
Watson to Ganguly, 1 run, right on the ball, short of a length, tapped to the off side, they rush for a single
Pratik: "I guess it looks to be working great between Warne and Smith. Look at the record, and both have contributed. I am so impressed that the least spending team is the most succesfull so far in the series.... get a hint Mallya"
Watson to Salman Butt, no run, short one, he dug it in hard, that was pacy too, tries to pull and manages only a bottom edge to short midwicket
Warne has changed the bowler after every over. Laxman did that when Deccan played Punjab and failed miserably. Warne is doing fine as of now
Watson to Salman Butt, 1 run, backs away, tries to lash it through the off side but can't beat the fielder, they hurry a single, this is tight bowling here
Watson to Ganguly, 1 run, 119.4kph, slow bouncer here, Ganguly backs away and tries to flash but struggles with the timing again, tapped to cover
Watson to Salman Butt, 1 run, 135.1, fine change of pace, pushed to the on side, only one again
Srinivas has a lateral thought: "How about limitations for batsmen.like a bowler can bowl maximum 4 overs(24 balls). Similarly a batsmen can bat for 24 balls (max). If he is out without facing 24 balls he is out."
Warne goes all the way to speak to Watson and brings third man up.
Watson to Ganguly, FOUR, and Ganguly's taken the mickey out of him, backs away and angles the bat past short third man for four, that was classic Ganguly, trying his best to outwit the opposition captain
End of over 6 (8 runs) Kolkata Knight Riders 32/1 (RR: 5.33)
- SC Ganguly 8 (12b 1x4)
- Salman Butt 16 (16b 3x4)
- SR Watson 2-0-13-0
- MM Patel 2-1-10-1
"Regarding the Warne-Smith relationship: I'm pretty sure the slating that went on during Warnes international career was just typical Australian mind-games. If you hear the mountains of praise that Warne has given Smith in this series, you can see that they do actually respect each other as sportsmen," says Guy.
Munaf now. The first time that a bowler is on for two in a row.
Patel to Salman Butt, no run, Super start, short of a length, moving away, Butt tries to jab but he's beaten by the movement
Patel to Salman Butt, FOUR, low full toss there, outside off but he's used his wrists superbly, spanked it through midwicket for four, he's too classy with these
Patel to Salman Butt, FOUR, that's the shot of the evening, gives himself room, sees the ball thrown up little wide but he's flayed that through the covers on one knee, classical mixes with improvisation there, Eden is alive and well
Patel to Salman Butt, OUT, got 'em! Munaf strikes back, fuller length this time and it's on middle and leg, that came back a bit after pitching, Butt tries to push tentatively but is rapped on the pads, huge appeal and that's given, height was an issue but the umpire thought it's striking the stumps
Salman Butt lbw b Patel 24 (20b 5x4 0x6) SR: 120.00
David Hussey comes in
Patel to Hussey, no run, 129kph, good-length outside off, pushed tentatively to short extra-cover
Patel to Hussey, no run, left alone outside off, moving a shade away, successful over again
End of over 7 (8 runs) Kolkata Knight Riders 40/2 (RR: 5.71)
- DJ Hussey 0 (2b)
- SC Ganguly 8 (12b 1x4)
- MM Patel 3-1-18-2
- SR Watson 2-0-13-0
Siddharth Trivedi is on
Trivedi to Ganguly, no run, short of a length, angling away from the left-hander, cuts but is done in by extra bounce
Trivedi to Ganguly, no run, 114kph, short bouncer there, Ganguly misreads that, tries to flay through the covers but can only manage an inside edge to the off side
Trivedi to Ganguly, 2 runs, walks down the ground and looks to loft over the in field, bottom edge trickles to midwicket and they pick up two
Trivedi to Ganguly, no run, another slower one, not coming onto the bat, Ganguly needs to wait an age for it and can't work it away, dribbles to slip
Trivedi to Ganguly, no run, 107.5kph, slower one again, this time full, Trivedi is on a roll here, Ganguly pushes back to the bowler, not able to get any timing going
Warne comes along for a chat with Trivedi
Trivedi to Ganguly, FOUR, slightly short this time, and angling away, Ganguly walks down and flays it wildly, get his timing going this time and that's beaten third man, good bit of innovation there, it's time they got a move on
End of over 8 (6 runs) Kolkata Knight Riders 46/2 (RR: 5.75)
- SC Ganguly 14 (18b 2x4)
- DJ Hussey 0 (2b)
- SK Trivedi 1-0-6-0
- MM Patel 3-1-18-2
Raj: "It seems Warne is not toying with his bowlers, but with the opponent coach... it's as if Warne throwing a challenge to Buchanan to come to terms with his style of mind games rather than Buchanan's style of laptop analysis..."
The man himself is on now. Shane Warne adjusting his field and ready to bowl to Hussey, his team-mate in Victoria.
Warne to Hussey, no run, wide one, legbreak but not turning that much, Hussey tries to cut but can't gauge the slightly low bounce
Warne to Hussey, 1 leg bye, worked away to the on side, padded away
"Something happens to Ganguly when he just sees Warne's face," says the cheeky Ravi Shastri on air
Warne to Ganguly, 1 run, tossed up, outside off, tapped carefully to the on side for a quick single
Warne to Hussey, no run, 77.9kph, legbreak that pitches on middle, Hussey goes back and pushes watchfully
Warne to Hussey, no run, on the front foot and driven wide of the bowler, but Warne is there quick, fielding it sharp and ready to throw it back
Warne to Hussey, no run, another leggie, Hussey on the front foot but drives straight to short extra cover, super start from Shaney (as Younis Khan just referred to him)
End of over 9 (2 runs) Kolkata Knight Riders 48/2 (RR: 5.33)
- DJ Hussey 0 (7b)
- SC Ganguly 15 (19b 2x4)
- SK Warne 1-0-1-0
- SK Trivedi 1-0-6-0
Trivedi to Ganguly, 1 run, another slower one from Sid (as Warne has nicknamed him), driven watchfully to mid-on
Warne is constantly changing his field but the men themselves don't appear to be moving, such theatre, lovely
Trivedi to Hussey, FOUR, too short and too wide, Hussey simply waits and steers it to third man for four, the square-ish fielder has no chance
Trivedi to Hussey, FOUR, down the leg side this time, Trivedi is having a poor over here, helped along past the keeper for four, two rank balls here
Trivedi to Hussey, 1 run, 127.7kph, low full toss, Hussey missed out there, might have wanted to smash it out of the ground, pushed to mid-off
Warne chats with Sid again. I'm sure they're discussing evening plans.
Trivedi to Ganguly, no run, 114.1, another slower one, and he's classed as a medium-pacer, hardly bowled two quick ones in a row, short of a length and Ganguly tries to steer down to third man, misses it
Trivedi to Ganguly, 1 run, another slower one, this time fuller, Ganguly reaches out for it and pushes to mid-off
End of over 10 (11 runs) Kolkata Knight Riders 59/2 (RR: 5.90)
- SC Ganguly 17 (22b 2x4)
- DJ Hussey 9 (10b 2x4)
- SK Trivedi 2-0-17-0
- SK Warne 1-0-1-0
Warne to Ganguly, 2 runs, legbreak that's on off, turns into the left-hander, Ganguly backs away and flays it hard towards extra cover, they pick up a couple
"I wonder if Warne really thought that his team would do so well. His thoughts at the beginning of the tournament were more along the lines of "We will spring a few surprises and cause a few upsets". Nothing in the line of "We are all set to steamroll our opponents," says Dheeraj.
Warne to Ganguly, SIX, huge, Ganguly says enough is enough, down the ground and an emphatic sweep that's lofted over square leg, it's flatter but he can murder spinners, way over the ropes for a biggie, the first six of the day
Warne to Ganguly, 1 run, turned to the on side, that was a legbreak which turned a bit more
Warne to Hussey, 1 run, Hussey jumps out of the crease, Warne drops is slightly short, he needs to adjust his shot and cut to cover, good battle here
Warne to Ganguly, no run, full toss on leg stump and Ganguly misses out, sweeps straight to square leg, that was a gimme
Warne to Ganguly, no run, 79.4kph, ripper from off to middle, Ganguly thinks of jumping out, thinks of giving himself room, thinks of getting a run but it's a dot, cramped for room and can't do much
End of over 11 (10 runs) Kolkata Knight Riders 69/2 (RR: 6.27)
- SC Ganguly 26 (27b 2x4 1x6)
- DJ Hussey 10 (11b 2x4)
- SK Warne 2-0-11-0
- SK Trivedi 2-0-17-0
Yusuf Pathan is on now. We call him Brother Yo in house (Irfan's brother)
Pathan to Hussey, no run, short of a length, tapped to the on side but fine diving safe from Asnodkar
Pathan to Hussey, 1 run, slightly short again, Hussey dances down the track and swings to midwicket, fine fielding from Tanvir there, keeps them down to one, that was a fine throw too
Warne is changing the field again. Round the wicket from Brother Yo.
Pathan to Ganguly, 1 run, tapped to the off side, quick run too, quickish from Yusuf
Pathan to Hussey, no run, 97.6kph, short of a length, gives himself room but can only manage a bottom edge, straight to the fielder
Pathan to Hussey, OUT, got 'em! quick offbreak that's crashed into middle stump, Hussey jumps down the ground and swings across the line but Yusuf has fired that offbreak in fast, it's gone through the big gap between bat and pad and rattled middle stump. Yusuf is ecstatic
DJ Hussey b Pathan 11 (15b 2x4 0x6) SR: 73.33
Debabrata Das is in. He's shown he can hit it long. But what can he do here?
Pathan to Das, 1 run, 97.2kph, fired in on middle and leg, turned away for a single
End of over 12 (3 runs) Kolkata Knight Riders 72/3 (RR: 6.00)
- DB Das 1 (1b)
- SC Ganguly 27 (28b 2x4 1x6)
- YK Pathan 1-0-3-1
- SK Warne 2-0-11-0
Warne has a slip in for Debadrata
Warne to Das, no run, slow legbreak this time, watchfully defended
mid-pitch chat between Dada and Deba
Warne to Das, SIX, ladies and gentlemen, introducing Debabrata, down the track and swings clean, what a shot, whistles towards the sight-screen for a biggie, Shane is a bit stunned, Eden is abuzz, that's as smooth a straight hit as you will see tonight.
The ball is lost here, a bit of a delay, Debabrata has just reminded me of the days when Navjot Sidhu used to do this to Warne. Smooth golf swings that took the ball into orbit. We miss you, Sherry
Warne to Das, 2 runs, flipper here, cramped for room but he stands back and manages to tuck it away to the on side for a couple
Warne to Das, no run, 73.7, juicy legbreak there, Debabrata is fooled there, welcome to the world, young man, flighted and he's beaten
Warne to Das, 1 run, tossed up on off but he's quick on the sweep and picks off a single behind square
Warne to Ganguly, 1 run, down the track and tries to loft the sweep again, but it's slower and he only gets a bottom edge to short fine leg for a single
End of over 13 (10 runs) Kolkata Knight Riders 82/3 (RR: 6.30)
- SC Ganguly 28 (29b 2x4 1x6)
- DB Das 10 (6b 1x6)
- SK Warne 3-0-21-0
- YK Pathan 1-0-3-1
Pathan to Ganguly, 1 run, quicker one outside off, tries to angle past third man but it's a fine bit of fielding by Munaf, keeps them to a single
Pathan to Das, SIX, that's tonked, short and outside off, Debabrata stands and pulls that with fury, way, way over the midwicket stands for six, that's gone 81 metres, they're planning a party in Siliguri
Warne has a chat with Yusuf again
Pathan to Das, 1 run, 103.5kph, full and on middle and leg, tapped away through midwicket
Bit of banter between Warne and Ganguly. Such fun. Ganguly dropped a piece of paper and Warne, having a cheeky look at it, gives it back. My guess is it was the D/L chart, but it could have well been something more romantic.
Pathan to Ganguly, 1 run, round the wicket, dropped it a bit short but saw him giving himself room, tapped to the off side, bottom edge there
Pathan to Das, 1 run, crisply smashed to midwicket but only a single, he's hitting them clean here
Pathan to Ganguly, 1 run, backs away again, scooped to long-on but only a single
End of over 14 (11 runs) Kolkata Knight Riders 93/3 (RR: 6.64)
- SC Ganguly 31 (32b 2x4 1x6)
- DB Das 18 (9b 2x6)
- YK Pathan 2-0-14-1
- SK Warne 3-0-21-0
Sid Trivedi is back
Trivedi to Ganguly, 1 run, slower one again, Trivedi is a slower bowler, guys, let's face it, glided away to third man
Trivedi to Das, no run, 126kph this time, he's varying it well, angled to short third man, both the third man and fine leg are up, he needs to be accurate here
Trivedi to Das, 1 run, slower one again, tucked to the on side, he's mixing it up wonderfully
Trivedi to Ganguly, OUT, all over for Dada, scooped straight down the throat of long-on, that's a quick one outside off, Ganguly backs away but settles for a strange scoop towards long-on, straight to Kaif and Eden is silenced
SC Ganguly c Kaif b Trivedi 32 (34b 2x4 1x6) SR: 94.11
Laxmi Ratan hukla is the new batsman. It's George Binoy at the keyboard for a while, Sid's getting some dinner.
Trivedi to Das, 1 run, fuller ball on middle and leg, nudged off the pads towards midwicket
Long-on drops back, Warne still has a slip!
Trivedi to Shukla, SIX, Shukla begind off in fourth gear! He moves towards the off side, swivels and pulls a short ball over the fine leg boundary, smashing start
End of over 15 (9 runs) Kolkata Knight Riders 102/4 (RR: 6.80)
- LR Shukla 6 (1b 1x6)
- DB Das 20 (12b 2x6)
- SK Trivedi 3-0-26-1
- YK Pathan 2-0-14-1
Patel to Das, 1 run, the attempted yorker ends up as a low full toss outside off, driven off the front foot through cover point
Patel to Shukla, 1 run, a good length ball swings into the right-hander, Shukla moves across and nudges the ball towards midwicket for a single
Patel to Das, 1 run, full and wide outside off stump, Das reaches out for it and drives the ball hard through cover point, he overbalanced as he played the shot
Patel to Shukla, no run, lovely ball, Munaf pitches on a good length and seams the ball away from Shukla who tries to open the face of the bat but gets beaten
Patel to Shukla, no run, full ball in the blockhole outside off stump, Shukla tries to hit through the off side but gets beaten
Patel to Shukla, 1 run, another attempted yorker and Shukla flicks the full toss through midwicket, Munaf ends an outstanding spell, 2 for 22 off four overs
End of over 16 (4 runs) Kolkata Knight Riders 106/4 (RR: 6.62)
- LR Shukla 8 (5b 1x6)
- DB Das 22 (14b 2x6)
- MM Patel 4-1-22-2
- SK Trivedi 3-0-26-1
Watson's back for another over. He has two third men, one fine the other square.
Watson to Shukla, 1 run, tight line and length on off stump, pushed off the front foot towards the off side
Watson to Das, 1 run, Das tries to pull a short ball that hurries on to him, he gets cramped for room and top edges towards midwicket
Watson to Shukla, 1 run, another short ball gets big on Shukla who pulls and gets a top edge behind square, they run a single towards long leg
Watson to Das, FOUR, well two third men and Das still gets a four in that region, Das steps out of his crease and Watson bowls a full ball outside off stump, Das throws his bat out at it and edges the ball past the keeper with the toe end of his bat
Watson to Das, 2 runs, shocking drop, Das backs away and lofts a short of a length ball over cover, he's hit it straight to Tanvir on the boundary who attempts the catch rather casually and drops it, Watson is gutted, he had begun to celebrate before the catch was taken, Tanvir was taking a few steps back and was in an uncomfortable position when the ball got to him
Watson to Das, 1 run, nudged off the back foot towards midwicket for a single
End of over 17 (10 runs) Kolkata Knight Riders 116/4 (RR: 6.82)
- DB Das 30 (18b 1x4 2x6)
- LR Shukla 10 (7b 1x6)
- SR Watson 3-0-23-0
- MM Patel 4-1-22-2
Sohail Tanvir to Das, 1 run, pushed off the front foot towards point for one more
Sohail Tanvir to Shukla, 1 run, played towards point once again
Sohail Tanvir to Das, OUT, well he's got Das with an outstanding yorker, Tanvir comes round the wicket and whips the yorker in with a quick-arm action, he swings the yorker into middle and leg and Das is late in bringing his bat down, Tanvir's celebration is unusually animated, relieved after the drop catch no doubt
DB Das b Sohail Tanvir 31 (20b 1x4 2x6) SR: 155.00
Sohail Tanvir to Saha, 1 run, played towards cover point off the front foot
Sohail Tanvir to Shukla, FOUR, Shukla gets inside the line by moving across his stumps and paddles the ball from outside off stump past the fielder at short fine leg, clever shot
Sohail Tanvir to Shukla, OUT, caught! Tanvir offers Shukla a knee-high full toss, that's a terrible ball but Shukla mis-hits the pull straight to Asnodkar at deep backward square leg, he takes the catch easily
LR Shukla c Asnodkar b Sohail Tanvir 15 (10b 1x4 1x6) SR: 150.00
End of over 18 (7 runs) Kolkata Knight Riders 123/6 (RR: 6.83)
- WP Saha 1 (1b)
- Sohail Tanvir 3-0-15-2
- SR Watson 3-0-23-0
Agarkar is in.
Watson to Agarkar, FOUR, smashing start, backs off and pulps it down the ground, past mid-on for four, screams away to the fence
Watson to Agarkar, 1 run, 135.2, short this time and Agarkar is cramped for room, no space to free his arms at all, nudged to third man
Watson to Saha, 1 run, OUT, short and pulled away from outside off, now then, this could be a run-out, they think of the second but Agarkar is short here, super flat throw from Ravindra Jadeja and the keeper whips the bails off quickly, that's sloppy from Agarkar - he's looking at the ball as he's going back and dives from far outside the crease. He's well short there.
AB Agarkar run out 5 (2b 1x4 0x6) SR: 250.00
Gul is in
Watson to Umar Gul, 1 run, short one again, tapped off the back foot to the off side
Watson to Saha, SIX, blitzer! short of a length and Saha has pumelled that crisply over square leg for six, that's off the sweet spot of the bat and soars away, why is Watson bowling so short?
Watson to Saha, no run, driven back down the ground, good stop from Watson, they think of a run but the bowler is quick to throw it back
"Sohail Tanvir has this habit of dropping catches and taking the wicket by himself the following over. In T20 world cup he dropped Jayasuria, and than the very next over he bowled him," says Syed.
End of over 19 (13 runs) Kolkata Knight Riders 136/7 (RR: 7.15)
- WP Saha 8 (4b 1x6)
- Umar Gul 1 (1b)
- SR Watson 4-0-36-0
- Sohail Tanvir 3-0-15-2
Sohail Tanvir to Umar Gul, no run, round the wicket and the most tantalising slower ball of the night, 99kph and Gul has no clue of when that's going to reach him, loops to the keeper
Sohail Tanvir to Umar Gul, SIX, that's clobbered way over midwicket for six, that's a quick and full one, Gul stands up tall and swings clean, what a hit, some Pakistani love here
Sohail Tanvir to Umar Gul, OUT, holds it back a bit, tucks him for room, Gul swings hard again but a thick top-edge flies straight to Kaif at long-on, that's as easy as it gets for him, third wicket for Tanvir
Umar Gul c Kaif b Sohail Tanvir 7 (4b 0x4 1x6) SR: 175.00
Sohail Tanvir to Saha, 2 runs, slower one again, tries to scoop it over midwicket but he's deceived by it, ballooned in the air but lands short of midwicket, they hurry a couple
Sohail Tanvir to Saha, 1 run, speedy yorker on leg stump there, that's a fine ball at the death, round-arm action that time, 131kph, digs it out to cover, not much you can do with that
Sohail Tanvir to Sharma, 2 runs, another quick yorker, outside off, drives it to long-off and completes a quick two
Kolkata end with a reasonable total here. 147 for 8 doesn't sound impressive but they have a good bowling attack. They usually field well at Eden and their intensity needs to be pumped up here (this is almost a must-win game). Munaf Patel was the most impressive bowler and he was ably supported by Trivedi and Tanvir
End of over 20 (11 runs) Kolkata Knight Riders 147/8
- I Sharma 2 (1b)
- WP Saha 11 (6b 1x6)
- Sohail Tanvir 4-0-26-3
- SR Watson 4-0-36-0


text:
Posted by Nigeria Gemchem Plc VERIFIED25 Sep 12:27 pmLagos Mainland, Lagos
Chinedu E. Obi, a software developer with about 5 years experience in Desktop, Web and Mobile Application development, is seeking for a Partner as:
Job Title: Business Developer
Location: Lagos
Job Description
I am currently working on a project code named #ProjectMain. It is a very profitable business and the idea is unique. Nothing like it in the country.
I am very good at what I do but I can't do everything so I am looking for a partner who is really experienced in business development and has a very large network of potential investors as the project requires seed capital to become operational.
There is no cash payment "I am looking for a partner not an employee". However, payment is going to be in form of slices of equity of the startup
Stay safe!
Watch out for:

subset: commoncrawl


text:
Chapter 1 (1) - In the Starlight With The MarquisMature
The girl lay in her bed with her eyes closed and had just put the sheet over her body when she heard a creak. Must be from the floorboards, she thought. The barn house was old, and according to Father Cordain, it was hundreds of years old. It was only natural then, that some sound, likely the rain hitting the rooftops, created such a creak.
She opened her eyes to check the room. There was her canvas hanging on the wall by a nail, the leftover paint buckets on the floor a reminder of the failed attempt at creating a masterpiece, thousands of times over. She looked down and saw a black box like thing on the floor. Creak, Creak, Creeaak
The girl undid the blankets and turned, putting her bare feet on the wooden floor, walking cautiously towards the mysterious box. It hadn't been here before, had it? No. It couldn't have been here, could it? She knew shadows did fucked up things to your senses but she wasn't sure. Something was moving in there and as she touched the metal bars she gasped as something small bit down on her finger. The girl flew back, trying to not scream. She couldn't wake Father Cordain.
Whatever bit her was now scurrying around. "Fuck you Mr.White!" The mouse she bought at a country fair stared at her with his big black eyes. A shadow moved as she turned back to the bed, but for all she knew it was from the tree branches outside. Getting back into bed, and feeling embarrassed, the girl closed her eyes and drifted to sleep.
She didn't ever dream while she was in the barnhouse or near Father, but she did meet the Marquis in a dream, didn't she? Yes, she had, but the memory was fuzzy because it was so long ago. He had come tonight though, hadn't he? Why? The girl liked seeing him, and he said he was waiting for her, but for what reason? She didn't know, didn't think she wanted to know, and was so tired she did not care to know, so she went back to bed, and slept.
The next thing she knew, she was standing outside again by the sea, dressed in a long red gown. The Marquis was how she saw him before, standing on the ancient sailboat made out of some tree and a canvas sail. He smiled, and lifted his hands up in celebration, as if thanking the stars for bringing them together once more. The girl realized his crimson robe was adorned with silver shapes, as if it was taken directly from the moon and starlight. His green eyes twinkled in the dark, a low voice speaking in a hushed tone, as though he was going to wake up someone if he dared to raise his voice.
"It is good to speak with you once more, child of light." He bowed before her, letting his robe flow down the planks of the ship. The girl watched in wonder as the light brightened from the moon, as if the Marquis was able to control it like one would an oversize lamp.
"You as well, Marquis," she curtsied as she spoke and he only smiled and shook his head.
"Among friends ma petite, there is no need for formality." She smiled, and moved closer as he took her hand, and kissed it.
"I thought you said there was no need to be formal." She laughed, staring into his eyes as he looked up with a smirk.
"Chivalry, and what is known as formality, are two distinct things, ma petite". He smiled, letting go of her hand and lifted his right hand up, as what looked like star stuff flew into the air. He put out a long somewhat frail hand and took hers, and they watched the stars together.
"In three months, my friend will come take you to me. The journey I'm afraid, will be quite long, and treacherous, but I know you'll be safe, always."
She looked at him with some doubt, "Treacherous?" He only smiled and kissed her hand once more, closing his eyes and breathing in deep.
"Yes, for I am in fact, dying ma petite, and," he paused, not wanting to have revealed this so soon, but he didn't have much time left. "There will be others coming to take my throne, so I want you here, before they do."
She wanted to protest, to scream into the dark night, but before she could, she did something she did not expect.
She woke up, and cried.


text:
Supplying Model Makers since 1895
Telephone us on: 01508 549330
Proxxon Micromot 50/EF 12V Rotary Tool with keyless chuck
Optimal for milling, drilling, routing, polishing, cutting, cleaning, brushing, de-burring, sawing, engraving etc.
Ideal for model builders, woodcarvers, electronic hobbyists, jewellers, opticians, artists, pedicure, dental technicians, tool and die makers etc.
Quiet and vibration-free for extended use for hours. Extremely stable housing of fibreglass reinforced Polyamide. Electronic speed control enables speed selection from 5000 to 20000rpm.
Keyless chuck for shanks from 0.3 - 3.2mm. Low voltage for optimal safety: 12VDC, 40W max input. As power supply source we recommend Micromot transformers of at least 1.0A
View more products from Proxxon
E-commerce by Divendo


text:
Goodwood South Ward
Number of bedrooms per dwelling
Dwellings with 3 bedrooms were the most common in Goodwood South Ward in 2011.
The Number of Bedrooms in a dwelling is an indicator of the size of dwellings, and when combined with Dwelling Type information, provides insight into the role Goodwood South Ward plays in the housing market. For example, an area of high density dwellings that are predominantly 1-2 bedroom are likely to attract students, single workers and young couples, whereas a high density area with dwellings that are predominantly 2-3 bedroom may attract more empty nesters and some families.
In combination with Household Type and Household Size, the Number of Bedrooms can also indicate issues around housing affordability, overcrowding and other socio-economic factors.
Derived from the Census question:
'How many bedrooms are there in this dwelling?'
Occupied private dwellings
Source: Australian Bureau of Statistics, Census of Population and Housing (opens a new window) 2006 and 2011. Compiled and presented by .id (opens a new window), the population experts.
(Enumerated data)
Compiled and presented in profile.id by .id, the population experts.
Compiled and presented in profile.id by .id, the population experts.
Dominant groups
Analysis of the number of bedrooms in dwellings in Goodwood South Ward in 2011 compared to the City of Unley shows that there was a lower proportion of dwellings with 2 bedrooms or less, and a similar proportion of dwellings with 4 or more bedrooms.
Overall, 39.1% of households were in dwellings with 2 bedrooms or less, and 17.8% of 4 or more bedroom dwellings, compared with 40.4% and 17.4% for the City of Unley respectively.
The major differences between the number of bedrooms per dwelling of Goodwood South Ward and the City of Unley were:
- A larger percentage of 3 bedroom dwellings (39.8% compared to 38.1%)
- A smaller percentage of dwellings with 1 or no bedrooms (includes bedsitters) (4.8% compared to 6.4%)
Emerging groups
The largest changes in the number of bedrooms per dwelling in Goodwood South Ward between 2006 and 2011 were:
- 4 bedrooms (+72 dwellings)
- 2 bedrooms (-57 dwellings)


text:
- Sign in
- Join
- Manage your booking
- Find a rental
- Traveler Inbox
- How to book
- Traveler Help Center
- Write a review
I'm single and 62 years old living in Pittsburgh Pa. I am CEO of Balm Construction Inc, Ceo of Le Maison du Paix Inc. And founder of 4 Deliverance by Faith nonProfit. I rent out my home all year round. I like to say make my home your home away from home. We take pride in our propertie and are responsive to any of our renters needs. Since we are local, we deal with our guests directly – from key exchanges, to cleaning, to repairs, and anything in between. My home has a full kitchen, 4 bedrooms 3 bath rooms.


text:
No products
Product successfully added to your shopping cart
17,25 € Tax incl 14,26 € Tax exc
Taylor of Old Bond Street Jermyn Street Deodorant Stick 75ml. Specially formulated for sensitive skin. The Jermyn Street deodorant stick naturalises and reduces natural body odour, keeping your fresh throughout the day.
Fragrance Notes: A modern fresh fern fragrance with bergamot, lemon, lime and lavender supported by a heart of geranium, neroli and amber resting on a base of musk, patchouli and vanilla. An allergen-free fragrance which contains Patchouli oil.
Made in England.


text:
You missed it This great deal for Bikram Tysons is over. But don't despair, we've got more great deals every day.
Related Deals That You May Like
Subscription to Online Yoga from MyYogaWorks
Fairfax County$45$5
Bikram Yoga
20 Bikram Yoga Classes
Fairfax County$199$29.99
Pure Om Hot Yoga - Fairfax
4 Hot Yoga Classes
Fairfax County$80$25
The Mindfulness Center
5 Yoga, Tai Chi, Quigong, or Nia Dance Classes
Fairfax County$150$30
Bikram Tysons
10, 20, or 6 Months of Hot Yoga Classes
- Save 63%
- 55 purchased
95% recommendedin LivingSocial customer ratings
Conceived by Bikram Choudhury in the 1970s, the style of yoga practiced at this Tysons Corner studio builds strength and flexibility, prevents injury and chronic illness, and eases stress and tension:
• $49 ($135 value) for ten drop-in Bikram hot yoga classes
• $95 ($270 value) for 20 drop-in Bikram hot yoga classes
• $499 ($900 value) for six months of unlimited hot yoga classes
"The people there are great and very helpful. This is a perfect studio to be introduced to Bikram yoga or to continue to practice. I love it!" -LivingSocial Member
What to Expect
With 20 certified instructors on hand, this studio has a class for all skill levels -- from beginner to seasoned yogi. You'll work through a series of 26 postures and two breathing exercises in a heated room during each 90-minute class. The spacious studio uses a heating and steam humidifier system that is energy efficient and clarifies the air for a optimum breathing conditions.
PAID VALUE EXPIRES ON May 25, 2022
PROMOTIONAL VALUE EXPIRES ON February 28, 2014


text:
|Publication number
|Publication type
|Application number
|Publication date
|Jun 1, 2004
|Filing date
|Apr 26, 2001
|Priority date
|Apr 26, 2001
|Fee status
|Also published as
|Publication number
|Matthias B. Zwicker, Hanspeter Pfister, Jeroen van Baar, Markus H. Gross
|Original Assignee
|Mitsubishi Electric Research Laboratories, Inc.
|Export Citation
|BiBTeX, EndNote, RefMan
|Patent Citations (1), Non-Patent Citations (2), Referenced by (39), Classifications (19), Legal Events (5)
|External Links: USPTO, USPTO Assignment, Espacenet
The present invention relates generally to computer graphics, and more particularly to rendering three-dimensional volume and point-sample data with splatting methods.
Laser range and image-based scanning can produce complex and visually stunning three-dimensional (3D) images. However, scanning produces a huge number of point-samples. Hereinafter, a point-sample is defined as a zero-dimensional point in space having (x,y,z) coordinates. Typically, the point-samples do not have connectivity information. That is, the point-samples are not related or linked. This makes it difficult to render point-samples as images.
One common way to connect the point-samples is with polygon (triangle) meshes, and then to render the meshes. However, some meshes are too large to be rendered interactively, and many applications cannot tolerate the inherent loss in geometric accuracy and texture fidelity that comes from polygon reduction. Recent efforts have focused on direct rendering of unconnected point-samples. These techniques use hierarchical data structures and forward warping to render the point-samples efficiently.
One important challenge for point rendering is to properly reconstruct an image of a continuous surface from irregularly spaced point-samples. The image must be correct, and independent of the order in which the point-samples are rendered. Very often, the point-samples must appear as a continuous opaque or translucent surface while maintaining the high texture fidelity of the scanned data. In addition, point rendering should correctly handle hidden surface removal and transparency.
In the prior art, texture mapping is frequently used to "fill-in" the surface areas between the point-samples. Texture mapping increases the visual complexity of models by mapping functions for color, normals, or other material properties onto the model surfaces. If these texture functions are inappropriately band-limited, texture aliasing may occur during the projection to raster images. In addition, texture mapping is mostly used for surface rendering. Volume rendering is important for visualizing acquired and simulated data sets in scientific and engineering applications. Volume rendering reconstructs a 3D function from discrete sample points, transforms the 3D function into screen space, and then evaluates opacity integrals along line-of-sights, called "rays."
In interactive volume rendering, splatting approximate this procedure, see Westover "Interactive Volume Rendering," Upson, editor, Proceedings of the Chapel Hill Workshop on Volume Visualization, pages 9-16, University of North Carolina at Chapel Hill, Chapel Hill, N.C., May 1989. Westover does not deal with aliasing problems, which lead to noticeable artifacts such as jagged silhouette edges and Moir� patterns in textures.
With splatting, the volume data is interpreted as a field of 3D reconstruction kernels, one kernel for each particle, voxel, or discrete sample point. Each 3D reconstruction kernel absorbs and emits light. Integrals are predetermined separately across each 3D kernel, resulting in "footprint" functions. Each footprint function "spreads" the contribution of each point over nearby pixels in the image. Typically, the span of the footprint is in the order of two to five pixels. The "smeared" contributions of each discrete sample point of the 3D volume are composited, i.e., accumulated, in a front-to-back or back-to-front order to produce the pixels of the output image.
Prior art splatting suffers from inaccurate visibility determination when compositing the splats in the back-to-front order. This leads to visible artifacts such as color bleeding. This problem can be solved by using an axis-aligned sheet buffer, see Westover "Footprint Evaluation for Volume Rendering," Computer Graphics, Proceedings of SIGGRAPH 90, pages 367-376, 1990. However, that solution produces disturbing "popping" artifacts in animations.
Popping is the term used to describe discontinuous intensity changes between subsequent images in the animation sequence. The sheet buffer can also be aligned parallel to the image plane, see Mueller et al. "Eliminating Popping Artifacts in Sheet Buffer-Based Splatting," IEEE Visualization '98, pages 239-246, 1998. They also splat several slices of each 3D reconstruction kernel separately. Their technique is similar to slice-based volume rendering, and does not suffer from popping artifacts.
Splatting can be combined with ray casting techniques to accelerate rendering with perspective projection. Hierarchical splatting allows progressive refinement during rendering. Furthermore, splatting can also be applied on a volume data set represented as wavelets.
Aliasing artifacts may occur in areas of the volume where the sampling rate along diverging rays falls below the volume grid sampling rate. A distance-dependent function can "stretch" the footprints to make them act as low-pass filters, see Swan et al. "Anti-Aliasing Technique for Splatting," Proceedings of the 1997 IEEE Visualization Conference, pages 197-204, 1997. Swan adjusts the size of the footprints according to the distance between the samples and the image plane. Swan is distinguished in greater detail below.
Additional care has to be taken when the 3D reconstruction kernels are not radially symmetric, as is the case for rectilinear, curvilinear, or irregular grids. In addition, for an arbitrary position in 3D space, contributions from all kernels must sum up to one. Otherwise, artifacts such as splotches occur in the image. For rectilinear grids, elliptical footprints can be warped to a circular footprint, see Westover "Interactive Volume Rendering," Upson, editor, Proceedings of the Chapel Hill Workshop on Volume Visualization, pages 9-16. University of North Carolina at Chapel Hill, Chapel Hill, N.C., May 1989. To render curvilinear grids, a stochastic Poisson resampling can generate a set of new points whose footprints are spheres or ellipsoids, see Mao "Splatting of Non Rectilinear Volumes Through Stochastic Resampling," IEEE Transactions on Visualization and Computer Graphics, 2(2):156-170, 1996.
Heckbert, in "Fundamentals in Texture Mapping and Image Warping" Master's Thesis, University of California at Berkeley, Department of Electrical Engineering and Computer Science, 1989, describes a rendering method that uses elliptical weighted average (EWA) filters to avoid aliasing of surface textures. However, that method only operates on 2D regularly sampled texture. In other words, that method can not be used directly with irregular point samples or volume data sets.
Therefore, there is a need for a splatting method that can render a volume data set including irregularly spaced sample points without blurring, aliasing, popping, and other annoying artifacts present with prior art splatting techniques.
The present invention provides a novel rendering method that combines the projection of an elliptical 3D Gaussian reconstruction kernel function with a elliptical 2D Gaussian low-pass filter to produce a single splat primitive a screen space, that is an EWA continuous resampling filter. This 2D EWA resampling filter can be applied directly to discrete sample points in screen space. The EWA resampling filter according to the invention prevents aliasing artifacts and excessive blurring in the image. Moreover, the invention works with arbitrary elliptical 3D Gaussian reconstruction kernels and arbitrary Gaussian low-pass filter functions, and efficiently supports rectilinear, curvilinear, and irregular volumes, and perspective projection.
The method according to the invention is based on a novel framework to determine the continuous 2D EWA resampling filter. Effectively, the method transforms the volume data set, or any other set of discrete sample points defined in object space, first to camera space, then to ray space, and finally to screen space. This transformation is equivalent to a projection, e.g. a perspective or orthonormal projection. By using a local affine approximation at each discrete sample point, we combined the continuous 3D reconstruction kernel and 2D filter functions into a single analytic expression, i.e., the continuous 2D EWA resampling filter. We then apply the continuous EWA resampling filter each discrete sample point in screen space to reconstruct a continuous image. Then, the continuous image can be directly rasterized by a rendering engine using, for example, forward differencing with a single 1D footprint table for all resampling filters and any viewing direction. Other rendering techniques to convert the continuous functions to pixels of the output image can also be used.
The splat primitive according to the invention can be integrated easily into conventional splatting methods. Because of the flexibility of this splatting primitive, it can be utilized to render rectilinear, curvilinear, or irregular volume data sets. By "flattening" the continuous resampling filter along the volume gradient, surface splats that are suitable for high quality iso-surface rendering can easily be computed.
More specifically, the invention provides a method for producing an image from a set of discrete sample points. The sample points can define a 3D volume or surface. Each discrete sample point is projected to a screen space. A continuous resampling filter for each sample point is generated in screen space. The continuous resampling filter is a combination of a continuous reconstruction function and a continuous filter function for the sample point in screen space. The continuous resampling filter is then applied to each corresponding discrete sample in the screen space to generate a continuous sample for the image. The continuous samples can be rasterized to pixels using any known rasterization process or method.
FIG. 1 is a block diagram of transformations on a volume data set according to the invention;
FIGS. 2a-b are block diagrams of volume rendering and splatting function;
FIGS. 3a-b are block diagrams of transformations from camera space to ray space;
FIGS. 4a-c are block diagrams of transformations of a reconstruction kernel from camera space to ray space;
FIG. 5 is a diagram of 3D and 2D reconstruction kernels according to the invention;
FIG. 6 are diagrams of the steps of iso-surface rendering;
FIG. 7 is a block diagram of properties of the reconstruction kernel according to the invention;
FIGS. 8a-b are images of prior art splatting and splatting according to the invention;
FIG. 9 is images of volume and surface splatting; and
FIG. 10 is a block diagram of steps for producing a continuous image from a set of discrete sample points according to the invention.
We first describe a projection performed on a set of discrete sample points, for example, a volume data set, so that continuous 3D reconstruction kernels can be applied. Then, we describe how our analytical EWA splatting primitive is derived.
Volume Rendering Pipeline
There are two fundamental approaches to volume rendering. In backward mapping, rays are cast from pixels in an image plane into a volume data set. Forward mapping maps the volume data set directly onto the image plane.
Our invention, as shown in FIG. 1, uses a forward mapping rendering engine 100. Note that here we use the terms "space" and "coordinate system" synonymously.
A set of discrete sample points, e.g., a volume data set 101, defined in object space 102, undergoes a viewing transformation 110 into camera space 103 to enable rendering of the samples from any arbitrary viewpoint. The camera space 103 is defined such that its origin is at the center of projection. Then, projective mapping 120 transforms the samples into ray space 104. Ray space is a non-Cartesian coordinate system that enables easy formulation of the rendering equation. In ray space, the viewing rays are parallel to a coordinate axis, facilitating analytical integration of the rendering functions. Step 130 performs sample classification, shading, and integration on samples in ray space. The output of step 130 is in screen space. 105 Finally, a viewport transformation 140 produces an output image 109 in viewport space 106.
For details on sample classification and shading in a forward mapping pipeline see Mueller, T. Moeller, and R. Crawfis "Splatting Without the Blur," Proceedings of the 1999 IEEE Visualization Conference, pages 363-370. October 1999.
Splatting Procedures
FIGS. 2a shows prior art ray casting, FIG. 2b shows the framework of the splatting process used by our invention. Because of their efficiency, splatting processes belong to the most popular forward mapping volume rendering techniques, see Mueller et al., and L. Westover "Footprint Evaluation for Volume Rendering" Computer Graphics, Proceedings of SIGGRAPH 90, pages 367-376. 1990.
We modify the conventional notation and describe our expression of ray space 104. We denote a discrete sample point in ray space 104 by a vector 201 of three coordinates x=(x0, x1, x2)T, where T denotes that this vector is transposed, i.e. it is a column vector, not a row vector. Given a center of projection 202 and a projection plane 203, these three coordinates are interpreted geometrically as follows.
The coordinates x0 and x1 specify a point on the projection plane. A ray 204 intersecting the center of projection and the point (x0, x1) on the projection plane is called a viewing ray. Using the abbreviation {circumflex over (x)}=(x0, x1), we refer to the viewing ray passing through (x0, x1) as {circumflex over (x)} 209. A third coordinate x2 205 specifies a Euclidean distance from the center of projection 202 to a point on the viewing ray.
To simplify the notation, we use any of the synonyms x, ({circumflex over (x)}, x2)T, or x=(x0, x1, x2)T to denote a 3D point in ray space.
The low-albedo approximation of the volume rendering equation describes a light intensity Iλ({circumflex over (x)}) at a wavelength λ that reaches the center of projection along the ray {circumflex over (x)} with length L as:
where g(x) 211 is an extinction function that defines the rate of light occlusion, and cλ(x) 212 is an emission coefficient. The exponential term can be interpreted as an attenuation factor. Finally, the product cλ(x)g(x) is called a source term. The source term describes the light intensity scattered in the direction of the ray {circumflex over (x)} 209 at the point x2, see N. Max "Optical Models for Direct Volume Rendering" IEEE Transactions on Visualization and Computer Graphics, 1(2):99-108, 1995.
An extinction function g(x) is a weighted sum of coefficients gk and 3D reconstruction kernels rk(x) 213. This corresponds to a physical model where the volume data set is represented by individual discrete sample points that absorb and emit light. Hence, the extinction function is:
In this model, the 3D reconstruction kernels rk(x) reflect position and shape of individual sample points. With our invention, the sample points can be irregularly spaced and may differ in shape, hence the representation in Equation (2) is not restricted to regular volume data sets. We substitute Equation (2) into Equation (1). This yields:
To compute this function numerically, splatting algorithms make several simplifying assumptions, illustrated in FIG. 2b. Usually the 3D reconstruction kernels rk(x) have local support. We assume that these local support areas do not overlap along a ray, and the reconstruction kernels are ordered front to back. We also assume that the emission coefficient is constant in the support of each reconstruction kernel along a ray. Moreover, we approximate the exponential function with the first two terms of its Taylor expansion. Finally, we ignore self-occlusion. According to these assumptions, we rewrite Equation (3) as:
where qk({circumflex over (x)}) denotes an integrated reconstruction kernel, hence:
Equation (4) is the basis for our EWA splatting method.
Westover, in "Footprint Evaluation for Volume Rendering" Computer Graphics, Proceedings of SIGGRAPH 90, pages 367-376, 1990 describes a footprint function for integrating reconstruction kernels qk. His footprint function specifies the contribution of each sample point to pixels of the image. In volume rendering as shown in FIG. 2b, integrating 231—231 reconstruction kernels along the viewing ray 205 is analogous to projecting a single volume reconstruction kernel onto the image plane and evaluating the footprint function qk. The coordinates {circumflex over (x)}=(x0, x1)T are also called screen coordinates, and Iλ({circumflex over (x)}) and qk ({circumflex over (x)}) are defined in screen space 105.
Splatting is efficient because it can use pre-integrated reconstruction kernels. Here, the projection of each sample point onto the image plane is determined using a 2D convolution. In contrast, ray-casting methods require a 3D convolution for each sample point. Thus, splatting methods have an inherent advantage in rendering efficiency. Moreover, splatting facilitates the use of higher quality kernels with a larger extent than the trilinear kernels typically employed by ray-casting.
However, prior art splatting methods are plagued by artifacts because of incorrect visibility determination. This problem is unavoidably introduced by the assumption that the reconstruction kernels do not overlap and are ordered back to front. Prior art splatting methods also tend to blur the image for zoomed in views.
Our invention provides a novel splat primitive that provides high quality anti-aliasing without blurring the image. It efficiently supports 3D elliptical reconstruction kernels. In addition, our splat primitive is compatible with known rendering processes and pipelines.
Aliasing in Rendering
Aliasing is a fundamental problem of any rendering method. Aliasing arises whenever a continuous image is sampled to a discrete raster grid, i.e., the pixel grid. Aliasing leads to visual artifacts such as jagged silhouette edges and Moir� patterns in textures. Typically, these problems become most disturbing during animations. From a signal processing point of view, aliasing is well understood. A continuous function has to be band-limited to respect the Nyquist frequency of a discrete sampling grid. This guarantees that there are no aliasing artifacts in the sampled image.
We describe a method that band-limits the splatting process of FIG. 2b. The splatting Equation (4) represents the output image as a continuous function Iλ({circumflex over (x)}) in screen space. In order to properly sample this continuous function to a discrete output image without aliasing artifacts, the function has to be band-limited to match the Nyquist frequency of the discrete image.
We achieve this band-limitation by convolving Iλ({circumflex over (x)}) with an appropriate low-pass filter h({circumflex over (x)}), yielding an antialiased splatting primitive
Although Iλ({circumflex over (x)}) is formulated as a continuous function in Equation (4), in practice this function is evaluated only at discrete positions, i.e., the pixel centers. Therefore, we make two simplifying assumptions to rearrange the integral in Equation (6). This leads to an approximation that can be evaluated efficiently. First, if the emission coefficient is approximately constant in the support of each footprint qk, then cλk ({circumflex over (x)})≈cλk, for all {circumflex over (x)} in the support area. If the emission coefficient is constant in the support of each reconstruction kernel along a viewing ray, then the emission coefficient is constant in the complete 3D support of each reconstruction kernel. In other words, we ignore the effect of shading for anti-aliasing. Note that this is the common approach for anti-aliasing surface textures as well.
Second, we also assume that the attenuation factor has an approximately constant value ok in the support of each footprint function. Hence,
for all {circumflex over (x)} in the support area. A variation of the attenuation factor indicates that the basis function is partially covered by a more opaque region in the set of discrete sample points. Therefore this variation can be interpreted as a "soft" edge. Ignoring such situations means that we cannot prevent edge aliasing. Again, this is similar to rendering surfaces, where edge and texture aliasing are handled by different processes as well.
Exploiting these simplifications, we can rewrite Equation (6) as:
We call
an ideal resampling filter. This resampling filter combines a footprint function qk and a low-pass filter h. Hence, we perform anti-aliased splatting by replacing the footprint function qk with the ideal continuous resampling filter ρk. This means that instead of band-limiting the entire output function Iλ({circumflex over (x)}), we band-limit each footprint function separately.
Under the conditions described above, our splatting produces a band-limited output function that respects the Nyquist frequency of the raster image and, therefore, avoids aliasing artifacts. Recall that the reconstruction kernels are integrated in ray space, resulting in footprint functions that vary significantly in size and shape across the volume. Hence, as an advantage, the our reconstruction kernel is strongly space variant.
An anti-aliasing technique for splatting, which is based on a uniform scaling of footprints is described by Swan et al. That technique produces good results only for radially symmetric footprints. However, for more general kernels, e.g., elliptical kernels, the uniform scaling of Swan et al. is a poor approximation of ideal low-pass filtering. Swan cannot avoid aliasing without introducing additional blurriness. In contrast, our method provides non-uniform scaling in these cases, leading to superior image quality, as described below.
Elliptical Weighted Average Gaussian Reconstruction Kernels
We choose elliptical 3D Gaussian reconstruction kernels because these have advantageous features. Gaussian reconstruction kernels are closed under affine mappings and convolution, and integrating a 3D Gaussian reconstruction kernel along one coordinate axis results in a 2D Gaussian reconstruction kernel. These properties enable us to analytically express the continuous resampling kernel of Equation (8) by a single 2D Gaussian, as described below.
In this section, we describe how we exploit the features of the continuous reconstruction kernels.
An elliptical Gaussian Gv(x−p) centered at a point p with a variance matrix V is defined by:
where |V| is the determinant of V. In this form, the Gaussian kernel is normalized to a unit integral. In the case of volume reconstruction kernels, GV is a 3D function, and hence, V is a symmetric 3�3 matrix, and x and p are the vectors (x0, x1, x2)T and (p0, p1, p2)T, respectively.
We apply an arbitrary affine mapping u=Φ(x) to this Gaussian kernel. The affine mapping is Φ(x)=Mx+c, where M is a 3�3 matrix and c is a vector (c0, c1, c2)T. We substitute x=Φ−1(u) in Equation (9), yielding:
Moreover, convolving two Gaussian functions with variance matrices V and Y results in a single Gaussian function with variance matrix V+Y:
Finally, integrating the 3D Gaussian function GV along one coordinate axis yields a 2D Gaussian function G{circumflex over (V)}, hence:
where {circumflex over (x)}=(x0, x1)T and {circumflex over (p)}=(p0, p1)T. The 2�2 variance matrix {circumflex over (V)} is obtained from the 3�3 matrix V by skipping the third row and column:
The Viewing Transformation
The 3D reconstruction kernels are initially defined in object space 102 which has coordinates t=(t0, t1, t2)T. We express the kernels in object space by:
where tk are the sample points in object space. For regular volume data sets, the variance matrices Vk″ are usually identity matrices. For rectilinear data sets, the variance matrices are diagonal matrices where the matrix elements contain the squared distances between sample points along each coordinate axis. With curvilinear volumes, the variance matrices can be determined as described by Mao et al. in "Splatting of Curvilinear Volumes, IEEE Visualization '95 Proc., pages 61-68. 1995.
We denote coordinates of camera space 103 by a vector u=(u0,u1,u2)T. Object coordinates are transformed to camera space using an affine mapping u=φ(t), called the viewing transformation 110. It is defined by a matrix W, and a translation vector d as φ(t)=Wt+d. We transform the reconstruction kernels GV
where uk=φ(tk) is the center of the Gaussian reconstruction kernel in camera coordinates, and rk′(u) denotes the reconstruction kernel in camera space.
According to Equation (10), the variance matrix in camera coordinates Vk′ is given by Vk′=WVk″WT.
Projective Transformation
The projective transformation 120 converts camera coordinates as shown in FIG. 3a to ray coordinates as shown in FIG. 3b. Camera space is defined such that the origin of the camera space is at the center of projection 301 and the projection plane is the plane 302 u2=1. Camera space and ray space are related by the mapping x=m(u). Using the definition of ray space from above, m(u) and its inverse m−1(x) are therefore given by:
where l=∥(x0,x1,1)T∥.
Unfortunately, these mappings are not affine, so we cannot apply Equation (10) directly to transform the reconstruction kernels from camera to ray space.
To solve this problem, we provide a local affine approximation mu
m u
where the point xk 304 is equivalent to m(uk), and is the center of the Gaussian reconstruction kernel in ray space. The Jacobian Ju
In the following, we omit the subscript uk, hence m(u) denotes the local affine approximation of Equation (17). We substitute u=m−1(x) in Equation (14), and apply Equation (10) to map the reconstruction kernels to ray space 104, yielding the desired expression for rk(x):
where Vk is the variance matrix in ray coordinates. According to Equation (10), Vk is given by:
Note that for uniform or rectilinear sample sets, V′k has to be determined only once per frame, because V″k is the same for all sample points, and W changes only from frame to frame.
However, because the Jacobian is different for each sample point, Vk has to be recalculated for each sample point. In the case of curvilinear or irregular volumes, each 3D reconstruction kernel has an individual variance matrix V″k. Our method elegantly handles this situation, requiring only one additional 3�3 matrix multiplication.
In contrast, prior art methods laboriously cope with anisotropic 3D reconstruction kernels by first determining their projected extents in screen space, and then mapping the projection to a circular footprint. Those methods are computationally expensive, and lead to a bad approximation of the integral of the reconstruction kernel as pointed out by Mueller at al. and Swan et al.
FIG. 4a shows a mapping of our reconstruction kernel to camera space 103, FIG. 4b a local affine mapping to ray space 104, and FIG. 4c an exact mapping in ray space. FIG. 4c is exaggerated to show the non-linear effects in the exact mapping. The local affine mapping is exact only for the ray passing through uk or xk 402, respectively. The affine mapping essentially approximates the perspective projection with an oblique orthographic projection. Therefore, parallel lines are preserved, and approximation errors grow with increasing ray divergence. However, the errors do not lead to visual artifacts, in general, because the fan of rays intersecting a reconstruction has a small opening angle due to the local support of the kernels.
Prior art splatting typically begins with mappings of the footprint functions to polygons in camera space. In a next step, the splatted polygons are projected to screen space, and then rasterized to a footprint image. However, that requires significant computational effort.
In contrast, our splatting efficiently projects the set of sample points to screen space 105, which requires only the computation of the Jacobian and two 3�3 matrix multiplications. Then, our continuous resampling kernel is applied directly to the sample points in screen space.
Integration and Band-Limiting
We integrate the Gaussian reconstruction kernel of Equation (18), according to Equation (5), resulting in a Gaussian (continuous) basis function qk:
where the 2�2 variance matrix Vk q of the basis function is obtained from Vk by skipping the last row and column, as shown in Equation (13). Finally, we choose a Gaussian (continuous) low-pass filter function h=GV h ({circumflex over (x)}), where the variance matrix VhεR2�2 is typically the identity matrix. With Equation (11), we can elegantly determine the convolution in Equation (8), yielding our continuous EWA resampling filter:
Reduction from 3D to 2D Continuous Reconstruction Kernels
Because our EWA continuous reconstruction kernel is an arbitrary Gaussian, we can accurately render a volume data set by appropriately selecting the shape of the reconstruction kernels. For example, we can improve the precision of iso-surface rendering by flattening our continuous reconstruction kernels along the directions of the surface normals.
Also, an infinitesimally flat continuous reconstruction kernel is equivalent to a Gaussian surface texture reconstruction kernel. In other words, we can extract and render a surface representation from a volume data set directly by flattening the our volume reconstruction kernel in 3D to a surface reconstruction kernel in 2D.
FIG. 5 shows rendering with 3D and 2D continuous reconstruction kernels according to the invention. We construct the "flattened" Gaussian reconstruction kernel 501 in object space 102 by scaling 520 a spherical Gaussian reconstruction kernel 502 in one direction by a factor 1/s. Hence, its variance matrix is:
A scaling factor s=1 corresponds to a spherical 3D kernel. In the limit, we get the circular 2D kernel when s=∞. To render the reconstruction kernels 501-502, we first apply the 3D viewing transformation matrix W, which may contain arbitrary modeling transformations with the viewing transformation. Then, we use the local affine approximation of Equation (17) to map the kernels to ray space. The variance matrix V of the reconstruction kernels in ray space is determined according to Equation (19). A matrix T3D denotes the concatenated 3D mapping matrix T3D=JW, and we express V as:
Hence, the elements vij of V are given by:
where we denote an element of T3D by tij. We determine the 2D Gaussian basis function by integrating the reconstruction kernel. According to Equation (13), its 2D variance matrix is obtained by skipping the third row and column in V. As s approaches infinity, we get the following 2D variance matrix
Conveniently, the 2D variance matrix can be factored into a 2D mapping T2D, which is obtained from the 3D mapping matrix by skipping the third row and column:
We now analyze the 2D mapping matrix T2D. First, we compute an explicit expression for the Jacobian J of the projective mapping. Using Equation (15), it is given by:
where l′=∥(u0,u1,u2)T∥. With l′=∥(u0,u1,u2)T∥, we use the first two rows of J and the first two columns of W to factor T2D into:
where wij denotes an element of W.
As shown in FIG. 6, this can be interpreted as a concatenation of a 2D to 3D parameterization 601 with a 3D to 2D projection 602, resulting in a compound 2D to 2D mapping 603.
The first stage is a parameterization of a 3D plane. It maps each circular 2D texture kernel 610 onto a plane 611 defined by the two vectors (w00, w10, w20)T 621 and (w01, w10, w21)T 602 in 3D camera space 103, resulting in an ellipse 603. The second stage is an oblique parallel projection with an additional scaling factor 1/u2, which is the local affine approximation of the perspective projection. Finally, combining the elliptical basis function with a low-pass filter, as in Equation (8), yields a texture filter according to our invention.
The Volume Splatting Method
The volume splatting method, in its most basic form, can be expressed by the following pseudo code:
for each sample point P[k]{
project P[k] to screen space;
determine a resampling kernel ρ[k];
splat P[k] with ρ[k] to generate pixels p[x];
for each p[x]{
shade p[x]}
In the following sections, we extend our splatting method to perform texture acquisition and mapping for point-sampled objects and surfaces, to handle transparent objects, models and surfaces, and to perform edge anti-aliasing.
Texture Filter and Point-Sampled Models
In conventional polygonal rendering, texture coordinates are usually stored for each vertex. This enables the rendering engine to combine the mappings between 2D texture, 3D object, and 2D screen space into a compound 2D-to-2D direct mapping between texture and screen space. Using this mapping, pixel colors are determined by looking up and filtering texture samples in 2D texture space at rendering time.
However, a compound mapping function is not available for sample point-based objects at rendering time. Consequently, we store an explicit texture representation in object space. We represent point-based objects as a set of irregularly spaced point-samples {Pk} in three dimensional object space without connectivity. A point-sample Pk has a position uk and a normal. Each sample point has an associated reconstruction kernel as described above in Equation (2).
For the purpose of texture acquisition during a pre-processing step, we rename this basis function a texture function rk with weighting coefficient wk. Although we describe our texture acquisition process for surface texturing, it should be understood that the same process can also be used for volume texturing.
Texture Acquisition
Instead of performing texture mapping as a post-processing step during rendering, our textures are pre-computed. We map the basis function as described by Equation (2) to texture space. There, it is always in the form of an ellipse. We evaluate the basis function in texture space to determine a texture value (color) that is then assigned to the sample point in object space, see Table A below.
Determining the Basis Functions
As described above, the basis functions rk are Gaussians with variance matrices Vq. In 2D, the variance matrix of Equation (22) can be simplified as:
which scales the Gaussian by h. For example, the side-length h is given globally by the acquisition process that samples the positions uk. As another possibility, the value h is chosen as the maximum distance between sample points in a small neighborhood. This value can be pre-computed and stored in a hierarchical data structure.
Determining the Weighting Coefficients
We distinguish between two different settings when determining the weighting coefficients wk, expressed as gk in Equation (2): objects with per sample point color, and texture mapping with sample point-based objects.
Objects with per Sample Point Color
Many imaging systems, such as laser range scanners, or passive vision systems, directly acquire range and color information. In such cases, the acquisition process provides a color sample ck for each sample point. We determine a continuous surface approximation ƒc(u) of the unknown original texture function from the irregular set of samples ck.
One computationally reasonable approximation is to normalize the texture functions rk to form a partition of unity, i.e., to sum up to one everywhere. Then, we use the samples as coefficients, hence wk=ck, and build a weighted sum of the samples ck:
where {circumflex over (r)}k are the normalized texture functions.
Texture Mapping of Sample Point-Based Objects
When an image or procedural texture is explicitly applied to point-sampled geometry, we provide a mapping function from object space to texture space as a pre-processing step. This allows us to warp the continuous texture function from object space with coordinates u to texture space with coordinates s. We then determine the unknown coefficients wk for (u) such that ck optimally approximates the texture.
From the samples cl, and the sampling locations si of the texture, the continuous texture function cc(s) is reconstructed using a texture reconstruction kernel n(s), yielding:
In our method, the texture reconstruction kernel is also a Gaussian with unit variance, a common choice for regular textures. Applying the mapping u=t(s) from object space to texture, the warped texture function {tilde over (ƒ)}c(u) is given by:
With {tilde over (ƒ)}c(u), we determine the weighting coefficients wk such that the error of the approximation provided by the surface function ƒc(u) is minimal. Utilizing the L2 norm, the problem is minimizing the following functional:
where w=(wj) denotes the vector of unknown coefficients. Because F(w) is a quadratic function of the coefficients, it has a minimum at ∇F (w)=0, yielding a set of linear equations.
We can define a linear system Rw=c. The elements of the matrix R and the vector c are given by the inner products:
If the texture functions rk are orthonormal, then the inner products are given by <rk,rj>=δkj, where δkj=1 if k=j, and δkj=0 otherwise. Consequently, R is the identity matrix, and the coefficients are determined as in EWA filtering by:
Pixels Data Structure
Following is a table that shows an example data structure that can be used for each pixel to be rendered. Besides color and normal components, each pixel contains the sum of the accumulated contributions of the reconstruction kernels, and screen space (depth) z values.
Storage (bytes)
RGB Color Components
4 � 4
XYZ Normal Components
3 � 4
Accumulations Components
Camera Space Value
Material Index
Total bytes per pixel
Our method provides order-independent transparency using a single rendering pass and a fixed size frame buffer. The general idea is to use a frame buffer that includes several layers or sheet buffers, each sheet buffer storing the pixel data listed in Table A.
A sheet buffer stores a fragment at each pixel. The purpose of the fragment is to collect the contributions of a single surface to the pixel. After all sample points have been splatted, the sheet buffers are composited, back-to-front, to produce the final pixel color. If there are a small fixed number l of fragments per pixel, then fragments are merged whenever the number of fragments exceeds a preset limit l.
For r transparency, we extend the splatting as follows.
Splatting the Resampling Kernel
In contrast to the single layered frame buffer, we now use a frame buffer that has several layers. Each layer stores a fragment per pixel. Each contribution that is splatted into a pixel is processed in three steps.
Accumulate-or-Separate Decision
Using a z threshold as described above, all fragments of the pixel are checked to see if they contain data of the same surface as the new contribution. If this is true, then the contribution is added to the fragment, and we are done. Otherwise, the new contribution is treated as a separate surface, and a temporary fragment is initialized with its data.
New Fragment Insertion
If the number of fragments including the temporary fragment is smaller than the limit l, then the temporary fragment is copied into a free slot in the frame buffer and we are done.
Fragment Merging
If the above is false, then two fragments are merged. Before merging, the fragments are shaded.
When fragments are merged, some information is inevitably lost, and visual artifacts may occur. These effects are minimized by using an appropriate merging strategy. Unfortunately, the situation is complicated by the fact that a decision has to be taken as the scene is being rendered, without knowledge about subsequent rendering operations. The main criterion for merging fragments is the difference between their z values. This reduces the chance that there are other surfaces that lie between the two merged surfaces and that are rendered later. In this case, incorrect back-to-front blending may introduce visual artifacts.
Before fragments can be merged, their final colors are determined by shading. Shaded fragments are indicated by setting their accumulated weight, see Table A, to a negative value. This guarantees that they are shaded exactly one time. The color and alpha values of the front and back fragment to be merged are cƒ;αƒ, and cb; αb, respectively. The color and alpha values c0;α0 of the merged fragment are computed using:
Fragments can also be shaded in a second pass, if necessary. After shading, the fragments of each pixel are blended back-to-front as described in the Equation above to produce the final pixel color.
Edge Anti-aliasing
In order to perform edge anti-aliasing, information about partial coverage of surfaces in fragments is needed. For point-based representations, one way to approximate coverage is to estimate the density of projected point-samples per pixel area. Coverage is then determined by measuring the actual density of sample points in the fragment and dividing the measured value by the estimated value.
Rather than explicitly determining this estimation, we make the simplifying assumption that the Gaussian basis functions are located on a regular grid and have unit variance. In this case, the basis functions approximate a partition of unity. In other words, we assume that the basis functions sum up to one at any point. Warping and band-limiting this constant function results in a constant function again. Therefore, the sum q of the resampling kernels is approximately one at any point, specifically in all fragments x:
If q is smaller than one in a fragment, this indicates that the texture does not completely cover the pixel, and q can be used as a coverage coefficient. For an irregular grid, the approximation of the partition of unity becomes less reliable. Furthermore, the Gaussians are truncated to a finite support.
With a cut-off radius c=1, a threshold τ=0:4 for indicating full coverage generally produces good results. The coverage q′ of a pixel is q′=q/τ.
We implement edge anti-aliasing by multiplying the alpha value of a fragment with its coverage coefficient. The final alpha value α′ of the fragment is:
FIG. 7 shows useful properties of the continuous reconstruction kernels according to the invention, and their advantages over prior art footprint filters. Columns 701, 702, and 703 show respectively minification, magnification, and anisotropic scaling where the kernels are minified in one direction and at the same time magnified in another direction. Rows 711 and 712 show respectively our continuous basis function and continuous low-pass filter function. Row 713 shows continuous reconstruction kernels that results from combining the basis function and low-pass filter function under the various conditions in columns 701-703. Row 714 show the prior elliptical resampling filter under the same conditions. Clearly, the prior art filters cannot handle all conditions successfully.
As shown in the column 701, the size and shape of the reconstruction kernels are dominated by the low-pass filter 712 when a mapping from the camera space to the ray space minifies the volume.
As shown in the column 702, the reconstruction kernels are dominated by the basis function when the volume is magnified. Because our reconstruction kernel 713 combines the basis function 711 with the low-pass filter function, a smooth transition between magnification and minification is enabled.
As shown in the column 703, our reconstruction kernel scales well anisotropically when the samples are minified in one direction and magnified in another direction.
Row 714 shows the prior art resampling filter that is uniformly scaled to avoid aliasing. There, the reconstruction kernel is essentially enlarged so that the minor radius is at least as long as the minor radius of the low-pass filter. For elliptical footprint functions, uniform scaling yields overly blurred images in the direction of the major axis of the ellipse.
FIG. 8a shows images 801 rendered with the reconstruction kernel according to the invention. FIG. 8b shows images 802 rendered with prior art uniformly scaled resampling filter. A square zebra texture with x and y dimensions of 1024�512�3 pixels is shown in row 811, 1024�256�3 in row 812. This leads respectively to elliptical kernels with a ratio between the length of the major and minor radii of 2:1, and 4:1.
Clearly, our continuous reconstruction kernel produces crisper images without the annoying aliasing artifacts present in the prior art images. As the ratio between the major and minor radii of the reconstruction kernels increases, the difference between our method and the prior art method becomes more pronounced. For strongly anisotropic kernels, prior art uniform scaling produces excessively blurred images, as shown in the images of FIG. 8b.
In FIG. 9, we show an image 901 rendered by a 3D "volume" reconstruction kernels, and a 2D "surface" reconstruction kernel. The texture size is 512�512 in the x and y directions. Typically, the perspective projection of the spherical kernel is almost a circle. Therefore, rendering with volume kernels does not exhibit anisotropic texture filtering and produces textures that are blurry, see magnified inset 910, similar to isotropic texture filters such as trilinear mip-mapping. On the other hand, splatting surface kernels is equivalent to EWA texture filtering. Circular surface kernels are mapped to ellipses, which results in high image quality because of anisotropic filtering, see inset 920.
Implementation Details
As shown in FIG. 10, we produce a continuous image from a set of discrete sample points 101 as follows. First, we project 1005 each sample point Pk to its position m(uk) in screen space. For each discrete sample point we generate a corresponding continuous reconstruction kernel 1002 by first determining 1010 the Jacobian (J) as in Equation (24). Then, we determine 1020 a variance matrix (V) for each reconstruction kernel in ray space 103 according to Equation (19). Next, we integrate 1030 the reconstruction kernels according to Equation (20) to produce the basis functions qk({circumflex over (x)}). We convolve 1040 the basis functions with low-pass filters h as in Equation (21) to produce a continuous reconstruction kernels ρk({circumflex over (x)}) 1002 for each discrete sample point in screen space 105.
The reconstruction kernel is centered at m(uk), and is evaluated for each sample point by applying (splat 1060) each reconstruction kernels to its corresponding discrete sample points projected into screen space to yield continuous samples of the continuous image.
Because the pixel grid in screen space is regular, the reconstruction kernel can be evaluated efficiently by rasterization 1070. Effectively, splatting is a rasterization of the resampling kernels. The rasterizing can use forward differencing in a rectangular bounding box, and using 1D generic look-up tables. In general, the depth complexity of a scene is greater than one, thus a process is required to separate the contributions of different surfaces when the surfaces are splatted into sheet buffers. Consequently, the z value of the tangent plane at Pk is determined at each pixel that is covered by the kernel. This can be done by forward differencing as well.
As we rasterize the kernels, we accumulate the rasterized pixels in sheet buffers. The sheet buffers correspond to planes in the set of sample points that are most parallel to the projection plane. To determine whether a new contribution belongs to the same surface that is already stored for a pixel, the difference between the new value and the z value stored in the frame buffer is compared to a predetermined threshold. If the difference is smaller than the threshold, the contribution is added to the pixel. Otherwise, given that it is closer to the viewpoint, the data of the sheet buffer is replaced by the new contribution. The sheet buffers are composited 1080 in a back-to-front order into a frame buffer.
We prefer to use deferred shading by shading after all sample points of a scene have been splatted. This avoids shading invisible sample points. Instead, each pixel is shaded using gradient estimation to determine filtered surface normals. Parameters for the shader are accessed via an index to a table with material properties, see Table A above. Advanced pixel shading methods, such as mapping, can be implemented as well.
Additionally, the well known Phong illumination model can be applied to produce the output image 1009. Note, shading can also be done prior to splatting. It is common for real-time applications to implement rendering processes as hardware pipelines, perhaps as a single chip, see U.S. Pat. No. 6,008,813 "Real-Time PC Based Volume Rendering System." Therefore, we prefer that the means that implement the functional blocks of FIG. 10 be hardware based for real-time applications.
As described above, an optional pre-processing step 20 can perform texture filtering by acquiring texture from a model 10, e.g., a polygon model, and convert the model 10 to the discrete point-sampled model 101.
Effect of the Invention
We have described a new splat primitive for volume and point-sample surface rendering. We call this primitive an elliptical weighted average EWA continuous resampling filter. Our primitive provides high quality anti-aliasing for splatting methods. The method described above combines an elliptical Gaussian reconstruction kernel with a Gaussian low-pass filter. We use a novel approach for determining the resampling kernel. Exploiting the features of 2D and 3D Gaussian reconstruction kernels, our method efficiently handles arbitrary elliptical reconstruction kernels, and perspective projection. Therefore, our splat primitive is well suited for rendering regular, rectilinear, curvilinear, and irregular volume and point-sample data sets.
To achieve interactive frame rates, a graphics hardware rendering engine can be used to rasterize our EWA splats as texture mapped polygons. We can also use sheet-buffers that are parallel to the image plane to eliminate "popping" artifacts. To render non-rectilinear data sets, a back-to-front sorting process can be applies prior to rendering. Furthermore, our splat primitive can be used in a post-shaded volume rendering pipeline. The derivative of our EWA reconstruction kernel can also be used as a band-limited gradient kernel. Consequently, aliasing caused by the shading for noisy volume data is avoided. In conjunction with culling processes, our method is also useful for real-time iso-surface rendering. The volume splatting method according to the invention can also be applied to volumetric models, such as clouds, fire, and 3D medical scans.
Although the invention has been described by way of examples of preferred embodiments, it is to be understood that various other adaptations and modifications may be made within the spirit and scope of the invention. Therefore, it is the object of the appended claims to cover all such variations and modifications as come within the true spirit and scope of the invention.
|Cited Patent
|Filing date
|Publication date
|Jun 30, 1997
|Apr 24, 2001
|Microsoft Corporation
|Method and system for tracking vantage points from which pictures of an object have been taken
|Mueller et al., "Splatting Errors and Antialiasing"; IEEE Transactions on Visualization and Computer Graphics, vol. 4, No. 2, Apr.-Jun., 1998.
|Paul S. Heckbert, "Fundamentals of Texture Mapping and Image Warping"; Master's Thesis, Dept. of Electrical Engineering and Computer Science, University of California, Berkeley, Jun. 17, 1989.
|Citing Patent
|Filing date
|Publication date
|Aug 28, 2002
|Feb 14, 2006
|Cadence Design Systems, Inc.
|Method and apparatus for propagating a piecewise linear function to a surface
|Apr 30, 2003
|Mar 28, 2006
|Method and apparatus for rendering of translucent objects using volumetric grids
|Jun 18, 2003
|Apr 25, 2006
|Swiss Federal Institute Of Technology Zurich
|System and method for producing 3D video images
|Mar 18, 2005
|Feb 13, 2007
|Three-dimensional paint projection weighting of diffuse and scattered illumination methods and apparatus
|Mar 18, 2005
|Feb 27, 2007
|Color compensated translucent object rendering methods and apparatus
|Jul 19, 2002
|May 8, 2007
|Mitsubishi Electric Research Laboratories, Inc.
|Object space EWA splatting of point-based 3D models
|Aug 5, 2004
|Jun 12, 2007
|Mitsubishi Electric Research Laboratories, Inc.
|Rendering deformable and animated surface reflectance fields
|Dec 22, 2005
|Oct 14, 2008
|Method and apparatus for rendering of translucent objects using volumetric grids
|Mar 18, 2005
|Oct 28, 2008
|Method and apparatus for rendering of complex translucent objects using multiple volumetric grids
|Jul 21, 2004
|May 12, 2009
|Nxp B.V.
|System for adaptive resampling in texture mapping
|Jun 25, 2003
|Jul 28, 2009
|The University Of Tokyo
|Image processing apparatus, image processing method, and image processing program
|Apr 4, 2006
|Oct 27, 2009
|Mitsubishi Electric Research Laboratories, Inc.
|Method and system for acquiring and displaying 3D light fields
|Oct 27, 2008
|Dec 28, 2010
|Subsurface rendering methods and apparatus
|Oct 27, 2008
|Jan 4, 2011
|Translucent object rendering methods and apparatus
|Dec 10, 2004
|Jun 14, 2011
|Strider Labs, Inc.
|Probable reconstruction of surfaces in occluded regions by computed symmetry
|Aug 22, 2005
|Apr 3, 2012
|Microsoft Corporation
|System and method for upscaling low-resolution images
|Dec 21, 2004
|Apr 2, 2013
|Entropic Communications, Inc.
|Computer graphics processor and method of rendering images
|Jun 23, 2010
|Oct 8, 2013
|Industrial Technology Research Institute
|Method and system for measuring object
|Jan 14, 2013
|Aug 19, 2014
|Stmicroelectronics S.R.L.
|Method of chromatic classification of pixels and method of adaptive enhancement of a color image
|Jun 18, 2003
|Mar 11, 2004
|Markus Gross
|System and method for producing 3D video images
|Jun 25, 2003
|Aug 5, 2004
|Katsushi Ikeuchi
|Image processing apparatus, image processing method, and image processing program
|Apr 30, 2003
|Nov 4, 2004
|Method and apparatus for rendering of translucent objects using volumetric grids
|Dec 10, 2004
|Jun 16, 2005
|Strider Labs, Inc.
|Probable reconstruction of surfaces in occluded regions by computed symmetry
|Jan 30, 2003
|Jun 16, 2005
|Kornelius Meinds
|Using texture filtering for edge anti-aliasing
|Mar 18, 2005
|Aug 18, 2005
|Three-dimensional paint projection weighting of diffuse and scattered illumination methods and apparatus
|Mar 18, 2005
|Sep 29, 2005
|Method and apparatus for rendering of complex translucent objects using multiple volumetric grids
|Mar 18, 2005
|Sep 29, 2005
|Color compensated translucent object rendering methods and apparatus
|Aug 5, 2004
|Feb 9, 2006
|Hanspeter Pfister
|Rendering deformable and animated surface reflectance fields
|Aug 22, 2005
|Feb 23, 2006
|Arcas Blaise A Y
|System and method for upscaling low-resolution images
|Jul 21, 2004
|Oct 19, 2006
|Koninklijke Philips Electronics N.V.
|System for adaptive resampling in texture mapping
|Dec 22, 2005
|Nov 9, 2006
|Method and apparatus for rendering of translucent objects using volumetric grids
|Dec 3, 2004
|May 10, 2007
|Barenbrug Bart G B
|Computer graphics processor and method for rendering 3-d scenes on a 3-d image display screen
|Dec 21, 2004
|Jun 28, 2007
|Koninklijke Philish Electronics N.C.
|Computer graphics processor and method of rendering images
|Apr 4, 2006
|Oct 4, 2007
|Wojciech Matusik
|Method and system for acquiring and displaying 3D light fields
|Oct 27, 2008
|Apr 30, 2009
|Subsurface Rendering Methods and Apparatus
|Oct 27, 2008
|Apr 30, 2009
|Translucent Object Rendering Methods and Apparatus
|Jun 23, 2010
|Sep 22, 2011
|Kuo-Tang Huang
|Method and system for measuring object
|Mar 26, 2010
|Sep 29, 2011
|Microsoft Corporation
|Personalized Apparel and Accessories Inventory and Display
|Jan 14, 2013
|May 30, 2013
|Stmicroelectronics S.R.L.
|Method of chromatic classification of pixels and method of adaptive enhancement of a color image
|U.S. Classification
|345/424, 382/260, 345/615, 382/154, 382/265, 345/616
|International Classification
|Cooperative Classification
|European Classification
|Apr 26, 2001
Owner name: MITSUBISHI ELECTRIC RESEARCH LABORATORIES, INC., M
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ZWICKER, MATTHIAS B.;PFISTER, HANSPETER;VAN BAAR, JEROEN;AND OTHERS;REEL/FRAME:011785/0756
Effective date: 20010424
|Dec 3, 2007
|Fee payment
Year of fee payment: 4
|Jan 16, 2012
|Maintenance fee reminder mailed
|Jun 1, 2012
|Lapse for failure to pay maintenance fees
|Jul 24, 2012
|Expired due to failure to pay maintenance fee
Effective date: 20120601


text:
Constantine Lardys
Constantine, surnamed Lardys,[1] (Greek: Κωνσταντίνος ὁ Λαρδῦς) was one of the senior-most officials of the late reign of the Byzantine emperor Maurice (r. 582–602).
Constantine Lardys was one of the leading members of the Byzantine Senate and a patrikios. He held the powerful post of praetorian prefect of the East some time during the latter part of Maurice's reign, although by 602 he held the post of curator of the palace of Hormisdas (curator domus divinae) and the extensive imperial estates attached to it.[2] Constantine's tenure as praetorian prefect was unpopular due to the stringent financial policies pursued by Maurice.[3]
Constantine played an important role in the turmoil that ended Maurice's reign in 602, brought about by the mutiny of the Danubian army. The already tense domestic situation was exacerbated when Constantine incurred the hostility of the influential Green racing faction, which led to the Greens protesting in the Hippodrome of Constantinople and to subsequent riots against Maurice, during which Constantine's house was burned down.[4][5]
On the day after the riots, 22 November, Maurice, with his family and closest associates fled the capital before the advancing rebel army under Phocas, and crossed over to Chalcedon. In a bid to secure the support of the Persian shah Khosrau II (r. 590–628), Maurice dispatched his eldest son and co-emperor, Theodosius, to the East, and sent Constantine Lardys to accompany him. They were soon recalled, however, and on their return fell into the hands of Phocas's men and were executed at Chalcedon, a few days after the execution of Maurice and his other sons.[6]
- ^ The sobriquet is probably connected to lard; it was apparently given by the people, although the reason remains unknown. (Martindale, Jones & Morris 1992, p. 347.)
- ^ Martindale, Jones & Morris 1992, pp. 347–348.
- ^ Whitby 1988, p. 25.
- ^ Martindale, Jones & Morris 1992, p. 348.
- ^ Whitby 1988, pp. 25–26.
- ^ Martindale, Jones & Morris 1992, pp. 348, 1293–1294; Whitby 1988, p. 26.
- Martindale, John Robert; Jones, Arnold Hugh Martin; Morris, J., eds. (1992). The Prosopography of the Later Roman Empire. III: A.D. 527–641. Cambridge, United Kingdom: Cambridge University Press. ISBN 978-0-521-20160-5.
- Whitby, Michael (1988). The Emperor Maurice and his Historian – Theophylact Simocatta on Persian and Balkan Warfare. Oxford, United Kingdom: Oxford University Press. ISBN 0-19-822945-3.